0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙ArkUI开发实战:eTS版【笑话app】

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-03-25 16:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

效果预览:

gif11

gif10

image-20220722101712051

笑话大全接口

我们用到的接口:

[聚合数据的笑话大全]

返回格式 :json

请求方式 :http get

接口备注 :根据时间戳返回该时间点前或后的笑话列表

请求参数说明:

名称必填类型说明
sortstring类型,desc:指定时间之前发布的,asc:指定时间之后发布的
pageint当前页数,默认1,最大20
pagesizeint每次返回条数,默认1,最大20
timestring时间戳(10位),如:1418816972
keystring在个人中心->我的数据,接口名称上方查看

返回参数说明:

名称类型说明
error_codeint返回码
reasonstring

JSON返回示例

{
    "error_code": 0,
    "reason": "Success",
    "result": {
        "data": [
            {
                "content": "有一天晚上我俩一起吃西瓜,老大把西瓜籽很整洁的吐在了一张纸上,rn过了几天,我从教室回但宿舍看到老大在磕瓜子,rn我就问他:老大,你什么时候买的瓜子?rn老大说:刚晒好,说着抓了一把要递给我……",
                "hashId": "bcc5fdc2fb6efc6db33fa242474f108a",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": ""我女朋友气跑了"rn"怎么回事?严重吗?你怎么着她了?"rn"不严重,我只是很久没用了"",
                "hashId": "03a6095c18e1d6fe7e2c19b2a20d03d1",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "还说神马来一场说走就走的旅行,rn工作后就连一场说走就走的下班都不行。",
                "hashId": "10edf75c1e7d0933c91f0f39a28a2c84",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "高速路上堵车,路边葡萄地里有一哥们竟然在偷葡萄,心想太没素质了吧!rn不管了我也去,刚溜进葡萄地,那哥们竟问我干嘛,rn我撇了一眼反问道你干嘛呢?rn那哥们答道摘葡萄呢!rn我答道:我也摘葡萄呢!rn哥们郁闷了说我摘我家的你呢?rn我顿时脸红,哥你家葡萄咋卖呢?",
                "hashId": "bb572bb5b4844badb31012983f7324f5",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "和老婆在街边散步,我手上捏着一张已揉成一团的传单,rn走了好一会终于看到个垃圾桶,我赶紧跑过去想扔掉,rn没想到老婆从后边一把拉住我说:老公,那个肯定吃不得了,别捡。rn我一愣,发现垃圾桶顶盖上放着半个西瓜。",
                "hashId": "7ebccd3bbfaf24e010f9eb3ee68234bd",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "某考生考了个倒数第一,回到家被他爸一顿暴揍,rn来到学校老师让他谈谈落后的体会,rn学生:“我终于明白了“落后就要挨打”的道理。”",
                "hashId": "4aee2aa6a79c67682f605c4146a8eca4",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "很多人不喜欢朝九晚五的生活,然后开始创业。rn最终,他的生活变成了朝五晚九。",
                "hashId": "7b358c4b96cf4a8d82b85545ea8f9603",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "钱这个东西,真是害人精。rn小到人与人之间的矛盾,大到国家之间的战争,无不是为了钱。rn钱可以把人推上万众瞩目之颠,也可以使人瞬间变成阶下囚。rn可是,富人们却没认识到,当钱几辈子花不完时,rn挣再多已经没有意义,还不如早日尽点社会责任,rn捐助给需要的人,求得个平安幸福。rn看到这个的有钱人们呐,你们什么时侯能捐我点啊!",
                "hashId": "94e18075f8c9c8211dfed5f8d6a62983",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "看到一句很好的名言:我们无法拉伸生命的长度,但是我们可以拓展生命的宽度。rn我觉得这句话太有道理了!rn意思就是:虽然我们无法再长高了,但是我们还可以继续长胖。",
                "hashId": "fd8e364a4c70d46e77c1610879748a9a",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            },
            {
                "content": "女生口中所说的“理工男好萌好棒好想嫁!”,rn其实理工男是指“会修电脑、会设置手机、会安家用电器、rn会帮做PPT打EXCEL表PS修图、话少、高冷、专一、不和乱七八糟的女生来往、rn不爱打扮却又干净清爽、高高瘦瘦、手指纤长、戴黑框眼镜超好看的帅哥”。rn其实找个帅哥让他学电脑,再戴个眼镜就OK了。",
                "hashId": "5001c08a3cc8a281b15c467bc15a4911",
                "unixtime": 1418814837,
                "updatetime": "2014-12-17 19:13:57"
            }
        ]
    }
}

接下来,我们开始今天的实战,首先创建一个项目NutJoke

image-20220722080412586

点击下一步

image-20220722080853387

因为我们要网络请求

所以我们需要在config.json中配置网络请求权限

更多鸿蒙开发应用知识已更新[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]参考前往。

或+mau123789学习,是v喔

QQ浏览器截图20240320150855.png

网络请求的步骤

1、声明网络请求权限

entry下的config.jsonmodule字段下配置权限

"reqPermissions": [
   {
      "name": "ohos.permission.INTERNET"
   }
]

2、支持http明文请求

默认支持https,如果要支持http,在entry下的config.jsondeviceConfig字段下配置

"deviceConfig": {"default": {
    "network": {
      "cleartextTraffic": true
    }
  }},

3、创建HttpRequest

// 导入模块
import http from '@ohos.net.http';
// 创建HttpRequest对象
let httpRequest = http.createHttp();

4、发起请求

GET请求( 默认为GET请求

// 请求方式:GET
  getRequest() {
    // 每一个httpRequest对应一个http请求任务,不可复用
    let httpRequest = http.createHttp()
    let url = 'https://devapi.qweather.com/v7/weather/now?location=101010100&key=48fbadf80bbc43ce853ab9a92408373e'
    httpRequest.request(url, (err, data) = > {
      if (!err) {
        if (data.responseCode == 200) {
          console.info('=====data.result=====' + data.result)
          // 解析数据
          //this.content= data.result;
          // 解析数据
          var weatherModel: WeatherModel = JSON.parse(data.result.toString())
          // 判断接口返回码,0成功
          if (weatherModel.code == 200) {
            // 设置数据

            this.realtime = weatherModel.now


            this.isRequestSucceed = true;

            console.info('=====data.result===this.content==' + weatherModel.now)

          } else {
            // 接口异常,弹出提示
            prompt.showToast({ message: "数据请求失败" })
          }

        } else {
          // 请求失败,弹出提示
          prompt.showToast({ message: '网络异常' })
        }
      } else {
        // 请求失败,弹出提示
        prompt.showToast({ message: err.message })
      }
    })}

5、解析数据(简单示例)

1.网络请求到的json字符串

/*
 * Copyright (c) 2021 JianGuo Device Co., Ltd.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *    http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

export function getTest() {
  return [
    {
      "content": "有一天晚上我俩一起吃西瓜,老大把西瓜籽很整洁的吐在了一张纸上,rn过了几天,我从教室回但宿舍看到老大在磕瓜子,rn我就问他:老大,你什么时候买的瓜子?rn老大说:刚晒好,说着抓了一把要递给我……",
      "hashId": "bcc5fdc2fb6efc6db33fa242474f108a",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": ""我女朋友气跑了"rn"怎么回事?严重吗?你怎么着她了?"rn"不严重,我只是很久没用了"",
      "hashId": "03a6095c18e1d6fe7e2c19b2a20d03d1",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "还说神马来一场说走就走的旅行,rn工作后就连一场说走就走的下班都不行。",
      "hashId": "10edf75c1e7d0933c91f0f39a28a2c84",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "高速路上堵车,路边葡萄地里有一哥们竟然在偷葡萄,心想太没素质了吧!rn不管了我也去,刚溜进葡萄地,那哥们竟问我干嘛,rn我撇了一眼反问道你干嘛呢?rn那哥们答道摘葡萄呢!rn我答道:我也摘葡萄呢!rn哥们郁闷了说我摘我家的你呢?rn我顿时脸红,哥你家葡萄咋卖呢?",
      "hashId": "bb572bb5b4844badb31012983f7324f5",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "和老婆在街边散步,我手上捏着一张已揉成一团的传单,rn走了好一会终于看到个垃圾桶,我赶紧跑过去想扔掉,rn没想到老婆从后边一把拉住我说:老公,那个肯定吃不得了,别捡。rn我一愣,发现垃圾桶顶盖上放着半个西瓜。",
      "hashId": "7ebccd3bbfaf24e010f9eb3ee68234bd",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "某考生考了个倒数第一,回到家被他爸一顿暴揍,rn来到学校老师让他谈谈落后的体会,rn学生:“我终于明白了“落后就要挨打”的道理。”",
      "hashId": "4aee2aa6a79c67682f605c4146a8eca4",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "很多人不喜欢朝九晚五的生活,然后开始创业。rn最终,他的生活变成了朝五晚九。",
      "hashId": "7b358c4b96cf4a8d82b85545ea8f9603",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "钱这个东西,真是害人精。rn小到人与人之间的矛盾,大到国家之间的战争,无不是为了钱。rn钱可以把人推上万众瞩目之颠,也可以使人瞬间变成阶下囚。rn可是,富人们却没认识到,当钱几辈子花不完时,rn挣再多已经没有意义,还不如早日尽点社会责任,rn捐助给需要的人,求得个平安幸福。rn看到这个的有钱人们呐,你们什么时侯能捐我点啊!",
      "hashId": "94e18075f8c9c8211dfed5f8d6a62983",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "看到一句很好的名言:我们无法拉伸生命的长度,但是我们可以拓展生命的宽度。rn我觉得这句话太有道理了!rn意思就是:虽然我们无法再长高了,但是我们还可以继续长胖。",
      "hashId": "fd8e364a4c70d46e77c1610879748a9a",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    },
    {
      "content": "女生口中所说的“理工男好萌好棒好想嫁!”,rn其实理工男是指“会修电脑、会设置手机、会安家用电器、rn会帮做PPT打EXCEL表PS修图、话少、高冷、专一、不和乱七八糟的女生来往、rn不爱打扮却又干净清爽、高高瘦瘦、手指纤长、戴黑框眼镜超好看的帅哥”。rn其实找个帅哥让他学电脑,再戴个眼镜就OK了。",
      "hashId": "5001c08a3cc8a281b15c467bc15a4911",
      "unixtime": 1418814837,
      "updatetime": "2014-12-17 19:13:57"
    }
  ]
}

2.创建相应的对象

export class JokeDetailData {
  content: string // 内容
  hashId: string // 哈希值
  unixtime: number //
  updatetime: string //更新时间


}
import { JokeDetailData } from './jokeDetailModel';

export class JokeModel {
  reason: string //返回说明
  error_code: number //返回码,0为查询成功

  result: {

    data: Array< JokeDetailData > // 笑话
  }
}

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口
    +关注

    关注

    33

    文章

    9446

    浏览量

    156145
  • 鸿蒙
    +关注

    关注

    60

    文章

    2859

    浏览量

    45359
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【HarmonyOS next】ArkUI-X新闻热搜聚合App【进阶】

    通过ArkUI-X将鸿蒙下的新闻热搜聚合App转换为iOS 一、项目背景与技术选型 1.1 项目概述 本案例基于鸿蒙(HarmonyOS)开发
    发表于 06-28 21:43

    ArkUI-X案例解析

    @ohos.animator (动画)实现动画效果。 // DisplaySyncArkUIX.ets import { Animator, AnimatorResult } from \'@kit.ArkUI
    发表于 06-23 22:40

    ArkUI-X应用工程结构说明

    简介 本文档配套ArkUI-X,将OpenHarmony ArkUI开发框架扩展到不同的OS平台,比如Android和iOS平台,让开发者基于Ark
    发表于 06-19 23:11

    ArkUI-X跨平台技术落地-华为运动健康(一)

    开发工作量以及保证体验一致性,对于运动健康App而言,显得尤为重要。作为鸿蒙NEXT系统生态中的重要一员,ArkUI-X框架是我们跨平台技术方案的首选。结合当前运动健康三端现状,具体采
    发表于 06-18 22:53

    ArkUI-X与Android联动编译开发指南

    .arkui-x/android/app/build.gradle目录下设置configBuildFlag开关,可触发联动ArkTS源码编译脚本,默认为false,不执行编译ArkTS脚本文件。 //执行联动
    发表于 06-16 22:55

    ArkUI-X在Android平台动态化开发指南

    本文介绍如何在Android平台进行ArkUI-X动态化开发,包括动态化目录规则及约束。 适用场景 动态化主要包括两个典型场景: 场景1:框架动态化,为了降低应用ROM体积占用,及满足动态升级框架
    发表于 06-15 23:33

    鸿蒙5开发宝藏案例分享---性能体验设计

    ;性能优化\"关键词! **如果大家在实战中遇到卡顿难题,欢迎在评论区交流~ 也欢迎关注我,后续会持续分享鸿蒙开发实战技巧! **✨ 希望这篇接地气的总结能帮你避开性能深坑!如果觉得有
    发表于 06-12 16:45

    鸿蒙5开发宝藏案例分享---性能优化案例解析

    鸿蒙性能优化宝藏指南:实战工具与代码案例解析 大家好呀!今天在翻鸿蒙开发者文档时,意外挖到一个 性能优化宝藏库 ——原来官方早就提供了超多实用工具和案例,但很多小伙伴可能没发现!这篇就
    发表于 06-12 16:36

    鸿蒙5开发宝藏案例分享---埋点开发实战指南

    鸿蒙埋点开发宝藏指南:官方案例实战解析,轻松搞定数据追踪! 大家好呀!我是HarmonyOS开发路上的探索者。最近在折腾应用埋点时,意外发现了鸿蒙
    发表于 06-12 16:30

    鸿蒙5开发宝藏案例分享---应用架构实战技巧

    大家好! 今天咱们聊聊鸿蒙开发中那些“官方文档提了但实际开发难找”的架构设计技巧。结合官方文档,我会用 真实代码案例+通俗讲解 ,帮你把分层架构和线程通信落地到项目里,告别“理论会了,代码不会
    发表于 06-12 16:14

    使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件

    # 使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件 #鸿蒙开发工具 #DevEco Studio ##
    发表于 06-11 17:18

    ArkUI-x跨平台Bridge最佳实践

    ;一码三平台\" 前面讲到的bridge主要是解决开发者在进行ArkTS代码开发时,需要使用的鸿蒙API不支持跨平台的问题,在Android和iOS平台上,可以借助bridge调用原生能力来
    发表于 06-10 23:06

    ArkUI-X与Android消息通信

    ; }; bridge.sendMessage(data); 2.ArkUI侧设置回调,用于接收Android侧发送的数据。 // xxx.ets private bridgeImpl = bridge.createBridge
    发表于 06-08 22:15

    鸿蒙5开发宝藏案例分享---一多开发实例(地图导航)

    ? 鸿蒙开发隐藏宝藏大公开!手把手教你玩转\"一多\"地图导航案例 ? 大家好呀!我是你们的老朋友,今天要给大家扒一扒鸿蒙官方文档里那些\"藏得深\"的实战
    发表于 06-03 16:17

    鸿蒙Flutter实战:14-现有Flutter 项目支持鸿蒙 II

    分别安装官方的3.22版本,以及鸿蒙社区的 3.22.0 版本 3.搭建 Flutter鸿蒙开发环境 参考文章《鸿蒙Flutter实战:0
    发表于 12-26 14:59