DevEco鸿蒙开发请求网络交互设置

news2024/12/23 13:47:39

首先,在鸿蒙项目下config.json中找到module项,在里面填写"reqPermissions": [{"name": "ohos.permission.INTERNET"}]

在这里插入图片描述

在页面对应js文件内,填写import fetch from '@system.fetch';

GETPOST区别

GET将表单数据以key=value形式,多个kv则用&相连,并添加到所指定的url后面。

例如:

http://localhost:8080/login/name=glm&password=mlg

POST不会显示kv内容,更加安全。

例如:

http://localhost:8080/login

同时,GET请求用来从服务器获得资源,POST用来向服务器提交数据。

GET请求

fetch.fetch({
            url: 'http://localhost:8080/login', //服务的地址
            data:formData.value, //可有可无,提交的数据,与表单中name属性值相同
            method:"GET",
            header: {
                'Content-Type': 'application/json'
            },
            success:(res)  => {
                console.info("login:"+res.data);
                console.info(JSON.parse(res.data))

                if(JSON.parse(res.data).name != null){ //登录成功,res.data是json数据
                    // console.info("dkjfkjdf")
                    router.replaceUrl({url:"pages/main/index",params:JSON.parse(res.data)})
                }else{
                    //登录失败进行提示
                    promptAction.showToast({message:"账号或密码输入错误!",duration:5000})
                }
            }
        });

POST请求

fetch.fetch({
            url: 'http://localhost:8080/login', //服务的地址
            data:formData.value, //可有可无,提交的数据
            method:"POST",
            header: {
                'Content-Type': 'application/json'
            },
            success:(res)  => {
                console.info("login:"+res.data);
                console.info(JSON.parse(res.data))

                if(JSON.parse(res.data).name != null){ //登录成功,res.data是json数据
                    // console.info("dkjfkjdf")
                    router.replaceUrl({url:"pages/main/index",params:JSON.parse(res.data)})
                }else{
                    //登录失败进行提示
                    promptAction.showToast({message:"账号或密码输入错误!",duration:5000})
                }
            }
        });

strings设置

可以在i18n目录下的json文件中添加一个url字符串:

{
  "strings": {
    "hello": "Hello",
    "world": "World",
    "url": "http://localhost:8080/prj/"
  },
  "Files": {
  }
}

那么GETPOST请求中的url可以写为:

url: this.$t("strings.url")+'cleaner/login', //服务的地址
 fetch.fetch({
            url: this.$t("strings.url")+'login', //服务的地址
            data:formData.value, //可有可无,提交的数据
            method:"POST",
            header: {
                'Content-Type': 'application/json'
            },
            success:(res)  => {
                console.info("login:"+res.data);
                console.info(JSON.parse(res.data))

                if(JSON.parse(res.data).name != null){ //登录成功,res.data是json数据
                    // console.info("dkjfkjdf")
                    router.replaceUrl({url:"pages/main/index",params:JSON.parse(res.data)})
                }else{
                    //登录失败进行Toast提示
                    promptAction.showToast({message:"账号或密码输入错误!",duration:5000})
                }
            }
        });

前端交互之“get与post请求的区别”_前端get和post请求的区别-CSDN博客

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

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

相关文章

界面控件DevExpress v24.1全新发布 - 跨平台性进一步增强

DevExpress拥有.NET开发需要的所有平台控件,包含600多个UI控件、报表平台、DevExpress Dashboard eXpressApp 框架、适用于 Visual Studio的CodeRush等一系列辅助工具。屡获大奖的软件开发平台DevExpress 今年第一个重要版本v23.1正式发布,该版本拥有众多…

1. 基础设计流程(以时钟分频器的设计为例)

1. 准备工作 1. 写有vcs编译命令的run_vcs.csh的shell脚本 2. 装有timescale,设计文件以及仿真文件的flish.f(filelist文件,用于VCS直接读取) vcs -R -full64 -fsdb -f flist.f -l test.log 2. 写代码(重点了解代码…

【Mac】DMG Canvas for mac(DMG镜像制作工具)软件介绍

软件介绍 DMG Canvas 是一款专门用于创建 macOS 磁盘映像文件(DMG)的软件。它的主要功能是让用户可以轻松地设计、定制和生成 macOS 上的安装器和磁盘映像文件,以下是它的一些主要特点和功能。 主要特点和功能 1. 用户界面设计 DMG Canva…

定义和反射Annotation类(注解)

文章目录 前言一、定义Annotation类二、反射Anootation类 1.元注解2.反射注解总结 前言 在写代码的过程中,我们经常会写到注释,以此来提醒代码中的点。但是,这些注释不会被查看,也不在整个代码之中,只能在源代码中进行…

Mistral AI最新力作——Mistral Large媲美GPT-4

Mistral AI自豪地宣布,他们的最新力作——Mistral Large,已经正式面世。这款尖端的文本生成模型不仅在多语言理解上表现出色,更在推理能力上达到了顶级水平。Mistral Large能够处理包括文本理解、转换和代码生成在内的复杂多语言推理任务。 M…

依赖注入(Dependency Injection, DI)在 iOS 开发中的应用

在 iOS 开发中,我们经常会遇到类与类之间存在依赖关系的情况。例如,一个视图控制器可能需要一个服务对象来处理数据,这种情况下,视图控制器就依赖于这个服务对象。传统的做法是直接在视图控制器中创建服务对象,但这会导…

目标跟踪算法(bytetrack)-tensorrt部署教程

一、本机安装python环境 conda create -n bytetrace_env python=3.8 activate bytetrace_env conda install pytorch torchvision cudatoolkit=10.1 -c检测GPU是否可用,不可用不行 import torch print(torch.cuda.is_available())安装bytetrack git clone https://github.c…

车辆轨迹预测系列 (二):常见数据集介绍

车辆轨迹预测系列 (二):常见数据集介绍 文章目录 车辆轨迹预测系列 (二):常见数据集介绍1、NuScenes (2020):1、下载2、说明 2、Waymo Open Dataset (2020):1、介绍2、概述3、下载4、教程5、参考 3、Lyft Level 5 (2020)&#xff…

Ubuntu系统如何配置通过图形界面登录root用户

Ubuntu系统中的root账号默认是锁定的,但可以通过设置密码来启用。 需要注意的是,由于root用户具有对系统完全控制的权限,因此在使用root账户时应格外小心。一个错误的命令可能会导致系统损坏,这就是为什么Ubuntu默认不启用root账户…

ELK Kibana搜索框模糊搜索包含不包含

默认是KQL,点击切换Lucene搜索,搜索日志中包含Exception关键字,不包含BizException、IllegalArgumentException、DATA_SYNC_EXCEPTION关键字的日志,如下: message: *Exception AND !(message : *BizException OR message : *Ille…

五十三、openlayers官网示例Layer Spy解析——跟随鼠标透视望远镜效果、图层剪裁

官网demo地址: Layer Spy 这篇实现了鼠标跟随望远镜效果,鼠标移动时绘制一个圆形的剪裁区剪裁上层图层。 container.addEventListener("mousemove", function (event) {mousePosition map.getEventPixel(event);map.render();});container.a…

工具分享:Search_Viewer

文章目录 前言Search_Viewer介绍安装方式使用方式 前言 本文推荐工具Search_Viewer,详细介绍其安装和使用方式。 Search_Viewer介绍 集Fofa、Hunter鹰图、Shodan、360 quake、Zoomeye 钟馗之眼、censys 为一体的空间测绘gui图形界面化工具,支持一键采…

【Python】成功解决TypeError: missing 1 required positional argument

【Python】成功解决TypeError: missing 1 required positional argument 下滑即可查看博客内容 🌈 欢迎莅临我的个人主页 👈这里是我静心耕耘深度学习领域、真诚分享知识与智慧的小天地!🎇 🎓 博主简介&#xff1…

事件驱动架构详解:触发与响应构建高效系统

目录 前言1. 事件驱动架构概述1.1 什么是事件1.2 事件驱动架构的核心概念 2. 事件驱动架构的实现2.1 基于消息队列的实现2.2 基于发布-订阅模式的实现2.3 基于流处理的实现 3. 事件驱动架构的优势3.1 松耦合性3.2 可扩展性3.3 异步处理3.4 灵活性 4. 事件驱动架构的应用场景4.1…

【论文复现|智能算法改进】改进麻雀算法的无人机三维路径规划

目录 1.UAV路径规划数学模型2.改进点3.结果展示4.参考文献5.代码获取 1.UAV路径规划数学模型 【智能算法应用】蜣螂优化算法DBO求解UAV路径规划 2.改进点 Logistics混沌映射 X n 1 μ X n ( 1 − X n ) , X n ∈ ( 0 , 1 ) (1) X_{_{n1}} \mu X_{_n}( 1 - X_{_n} ) ,\qua…

CSS属性选择器具有不区分大小写的模式

今天,我偶然发现了 caniuse.com 项目的一期,其中提到了新的和即将推出的 CSS Level 4 选择器。 这个列表很长,并且有许多新的选择器正在开发中。一个新的选择器标志引起了我的注意;属性选择器将变成一个 i 标志,这使得…

CRMEB PRO企业微信通讯录配置

企业微信通讯录配置 登录企业微信管理后台 企业微信 1、点击【管理工具】找到【通讯录同步】点击进入 2、点击【开启API接口同步】 进入设置【通讯录同步】页面后,权限一栏,勾选【API编辑通讯录】勾选【开启手动编辑】; 3、点击下图箭头所…

服务端代码编写中MySql大小写在Java中报错问题解决

报错信息: 原因:MySql和Java变量大小写产生的冲突。 经过查阅各个博客等,得出浅显结论(不一定对):MySql大小写不敏感,Java大小写敏感,当Javabean转为MySql数据库表时,Ja…

Linux企业 集群批量管理-秘钥认证

集群批量管理-秘钥认证 概述 管理更加轻松:两个节点,通过秘钥认证形成进行访问,不需要输入密码,单向服务要求(应用场景): 一些服务在使用前要求我们做秘钥认证 手动写批量管理脚本名字&#x…

Swift Combine — Subject Publishers(PassthroughSubject CurrentValueSubject)

本文主要介绍一下Subject&#xff0c;Subject 本身也是一个 Publisher&#xff0c;其定义如下&#xff1a; public protocol Subject<Output, Failure> : AnyObject, Publisher {func send(_ value: Self.Output)func send(completion: Subscribers.Completion<Self.…