2023年夏季《移动软件开发》实验报告2

news2024/12/23 5:48:11

2023年夏季《移动软件开发》实验报告

姓名和学号?
本实验属于哪门课程?中国海洋大学23夏《移动软件开发》
实验名称?实验2:天气查询小程序
博客地址?XXXXXXX
Github仓库地址?XXXXXXX

(备注:将实验报告发布在博客、代码公开至 github 是 加分项,不是必须做的)

一、实验目标

1、掌握服务器域名配置和临时服务器部署;2、掌握 wx.request 接口的用法。

二、实验步骤

列出实验的关键步骤、代码解析、截图。

注册账号

https://dev.qweather.com/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YJkh8hqY-1692668870946)(C:\Users\李泽祥\AppData\Roaming\Typora\typora-user-images\image-20230821155401186.png)]

之后得到了 k e y key key

api调用方法

https://devapi.qweather.com/v7/weather/3d?location=101010100&key=这里替换成你的key

小程序配置服务器域名

在开发管理中找到并配置好 r e q u e s t request request合法域名

下载和风天气的图标

https://dev.qweather.com/docs/resource/icons/

并放到项目中

选择器

在这里插入图片描述
mode=region就可以直接显示地区信息

完成静态页面

在这里插入图片描述

添加逻辑函数

在这里插入图片描述

但是,此时通过picker只能得到选择的城市文字内容,需要转成locationID才可以使用,所以在微信公众平台添加域名https://geoapi.qweather.com

getLocationId() {
    return new Promise((resolve, reject) => {
      let that = this;
      wx.request({
        url: 'https://geoapi.qweather.com/v2/city/lookup?',
        data: {
          location: that.data.region[1],
          adm: that.data.region[0],
          key: 'e21f318045b848e29f6b1b1634dbe163'
        },
        success: (res) => {
          console.log("getLocationId", res.data);
          that.setData({
            locationId: res.data.location[0].id
          });
          resolve(); // 解析 Promise
        },
        fail: (error) => {
          reject(error); // 拒绝 Promise 并传递错误
        }
      });
    });
  }

完成locationId的编写,需要封装成promise对象,才能在使用.then()方法

三、程序运行结果

在这里插入图片描述

默认情况
在这里插入图片描述

选择完地区之后

列出程序的最终运行结果及截图。

四、问题总结与体会

  1. getWeather()getLocationId()有异步问题,并且使用then()解决不了:将getLocationId()封装成 p r o m i s e promise promise对象

描述实验过程中所遇到的问题,以及是如何解决的。有哪些收获和体会,对于课程的安排有哪些建议。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/912239.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MyBaits注解开发

1、注解开发介绍 在过去使用框架开发项目,基本都采用xml作为框架的核心配置文件存在,但是这种方式开发效率还是比较地下、不灵活。 现在企业开发为了能够更快的提高开发效率,必然会使用企业级框架进行项目开发,而现在主流的框架…

华人画家戴渭作品 3000 万拍出,牛津艺术学院发出任教邀请

爱丁堡,2023年7月 - 画家戴渭以他独特的画风、深邃的意境和慈悲智慧的属性,将艺术与宗教融合于作品之中。初看他的作品,可能会被其高超的艺术水准所震撼,然而仔细品味,方能领略到他深邃的艺术造诣与宗教智慧的深度融合。 作为国内最年轻的华人80后画家之一,戴渭近期被英国牛津…

若依cloud -【 22 ~ 25 】

22 认证中心介绍 1 概述 用户身份认证的过程ruoyi-cloud认证中心的实现没有依赖任何插件,相对简单,一看就懂从架构图的角度看认证中心: 登录请求,进到网关网关直接调用认证中心。查看ruoyi-gateway-dev.yml: # 结论…

【历史上的今天】8 月 22 日:改变世界的程序员们;网络直播的鼻祖;何小鹏离开阿里巴巴

整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来。 今天 2023 年 8 月 22 日。历史上的今天,Masatoshi Shima 出生,他和 英特尔(Intel) 合作设计的芯片让第一个微处理器 Intel 400…

【SpringSecurity】二、密码处理与获取当前登录用户

文章目录 一、密码处理1、加密方案2、BCryptPasswordEncoder类初体验3、使用加密码加密 二、获取当前登录用户1、方式一:通过安全上下文的静态调用2、方式二:做为Controller中方法的参数3、方式三:从HTTPServletRequest中获取4、方式四&#…

无涯教程-PHP Installation on Windows NT/2000/XP with IIS函数

在Windows Server上运行IIS的PHP的安装比在Unix上简单得多,因为它涉及的是预编译的二进制文件而不是源代码。 如果您打算在Windows上安装PHP,那么这是先决条件列表- 运行中的PHP支持的Web服务器。一个正确安装的PHP支持的数据库,如MySQL或Oracle等。(如果您打算使用的话) PHP…

smiley-http-proxy-servlet 实现springboot 接口反向代理,站点代理,项目鉴权,安全的引入第三方项目服务

背景: 项目初期 和硬件集成,实现了些功能服务,由于是局域网环境,安全问题当时都可以最小化无视。随着对接的服务越来越多,部分功能上云,此时就需要有一种手段可以控制到其他项目/接口的访问权限。 无疑 反向…

硬件解码example

使用方法: ./hw_decode vaapi juren-30s.mp4 juren-30s.mp4 验证播放: ffplay -video_size 1920x1080 -pixel_format yuv420p juren-30s.yuv av_hwdevice_iterate_types(type)如果你填入的参数不对,那么这函数这个函数的作用相当于以下命令&…

飞天使-k8s基础组件分析-pod

文章目录 pod介绍pod 生命周期init 容器容器handlerpod中容器共享进程空间sidecar 容器共享 参考链接 pod介绍 最小的容器单元 为啥需要pod? 答: 多个进程丢一个容器里,会因为容器里个别进程出问题而出现蝴蝶效应,pod 是更高级的处理方式pod 如何共享相…

简述docker映射(Mapping)和挂载(Mounting)

映射的概念: 将容器内的端口映射到主机的端口上,这样就可以通过主机的网络接口与容器内部进行通信。主机上对应端口的请求会被转发到容器内部,从而实现对容器内部程序的通信访问(注意!这里提到的容器内部的端口并不一定…

网络安全(黑客)了解学习路线

谈起黑客,可能各位都会想到:盗号,其实不尽然;黑客是一群喜爱研究技术的群体,在黑客圈中,一般分为三大圈:娱乐圈 技术圈 职业圈。 娱乐圈:主要是初中生和高中生较多,玩网恋…

EasyImage简单图床 - 快速搭建私人图床云盘同时远程访问【无公网IP内网穿透】

憧憬blog主页 在强者的眼中,没有最好,只有更好。我们是移动开发领域的优质创作者,同时也是阿里云专家博主。 ✨ 关注我们的主页,探索iOS开发的无限可能! 🔥我们与您分享最新的技术洞察和实战经验&#xff0…

阿里云CDN加速器基本概念与购买开通

文章目录 1.CDN加速器的基本概念1.1.CDN加速器基本介绍1.2.网站引入CDN加速器的架构图1.3.CDN加速器的工作原理1.4.引入CDN后域名解析变成了CNAME? 2.开通阿里云CDN加速服务 1.CDN加速器的基本概念 CDN加速器官方文档:https://help.aliyun.com/product/…

USB音频芯片SSS1700 鑫创优势替代CM6533参考设计|SSS1700规格24bit 96KHZ |替换CM6533方案

Cmedia CM6533是一款US B音频编解码器,内部嵌入8051内核,适用于耳麦,移动娱乐设备直插移动音箱(docking),US B音箱,US B麦克风等应用。通过内部8051可以研发出各种应用,例如微软语音…

vue3 pdf、word等文件下载

效果&#xff1a; <div class"byLawBox"><div class"titleBox">规章制度公示</div><div class"contentBox"><TableList:loading"byLawloading"ref"byLawtablistRef":hasImport"false"…

Unity - 特殊文件夹

地址记录&#xff1a;https://www.cnblogs.com/zouqiang/p/6841399.html Assets Assets文件夹是unity项目中放置游戏资源的主文件夹。 该文件夹中的内容将直接反应在编辑器的Project视口中。许多系统API基于该文件夹路径。 Resources Unity允许你按需动态加载游戏资源到场景中…

ubuntu 对多CPU统一设置高性能模式

一、问题描述 之前在网上找到的CPU设置高性能模式&#xff0c;只能设置CPU0单个CPU&#xff0c;下述是对多核CPU统一设置工作模式。 二、软件安装与设置 执行下述命令sudo apt-get install indicator-cpufreq,然后重启电脑。此时&#xff0c;界面右上角会出现如下图标&#xf…

爬虫异常捕获与处理方法详解

Hey&#xff01;作为一名专业的爬虫代理供应商&#xff0c;我今天要和大家分享一些关于爬虫异常捕获与处理的方法。在进行爬虫操作时&#xff0c;我们经常会遇到各种异常情况&#xff0c;例如网络连接错误、请求超时、数据解析错误等等。这些异常情况可能会导致程序崩溃或数据丢…

威班8.19PMP考试爱心送考再出发,能量补给站为学员提供考试保障

8月19日&#xff0c;2023年的第三场PMP考试准时开考。 对于准备了个把月的学员们来说&#xff0c;这一时刻无比重要&#xff0c;为了给威班的PMP学员们考试加油打气&#xff0c;威班特地组织了送考活动&#xff0c;在考场外提前布置应援点&#xff0c;给前去参加考试的学员们带…

5.1 汇编语言:汇编语言概述

汇编语言是一种面向机器的低级语言&#xff0c;用于编写计算机程序。汇编语言与计算机机器语言非常接近&#xff0c;汇编语言程序可以使用符号、助记符等来代替机器语言的二进制码&#xff0c;但最终会被汇编器编译成计算机可执行的机器码。 相较于高级语言&#xff08;如C、P…