首页 > 其他分享 >在Android中发送网络请求(post和get的区别)

在Android中发送网络请求(post和get的区别)

时间:2024-09-04 17:51:53浏览次数:8  
标签:请求 get jsonObject addHeader JSON toString post Android

get

 // 将参数附加到 URL
        String urlWithParams = HttpConfig.GET_USER_NAME + "?qrCodeContent=" + msg;

 // 构建请求
        Request request = new Request.Builder()
                .url(urlWithParams)
                .addHeader("Authorization", authToken)
                .addHeader("satoken", satokenToken)
                .get()  // 使用GET请求
                .build();

post

// 构建JSON请求体
        JSONObject jsonObject = new JSONObject();
        try {
            jsonObject.put("qrCodeContent", scannedQrCodeContent);
            jsonObject.put("remark", remark);
            jsonObject.put("relation", relationship);
            jsonObject.put("isAuthorize", isAuthorize);

            Log.d(TAG, "构建的 JSON 数据: " + jsonObject.toString());
        } catch (JSONException e) {
            e.printStackTrace();
            Toast.makeText(getContext(), "数据构建失败", Toast.LENGTH_SHORT).show();
            return;
        }
// 将 JSON 转换为 RequestBody
        RequestBody body = RequestBody.create(
                jsonObject.toString(),
                MediaType.parse("application/json; charset=utf-8")
        );

// 构建 POST 请求,并添加请求头
        Request request = new Request.Builder()
                .url(HttpConfig.USER_RELATION)
                .addHeader("Authorization", authToken)  // 添加 Authorization 头部
                .addHeader("satoken", satokenToken)  // 添加 satoken 头部
                .post(body)  // 设置请求体为之前构建的 JSON
                .build();

        Log.d(TAG, "发送的 POST 请求: " + request.toString());
        Log.d(TAG, "请求体: " + jsonObject.toString());

 

标签:请求,get,jsonObject,addHeader,JSON,toString,post,Android
From: https://www.cnblogs.com/lachesism/p/18397055

相关文章

  • mac 上golang编译 安卓系统的so 错误 'android/log.h' file not found
    lib.gopackagemainimport"C"//exportSpeedTestfuncSpeedTest(config*C.char){ configContent:=C.GoString(config) run(configContent)}funcmain(){}需要安装NDK,用Androidstudio安装,在SDKManeger的SDKTool里选择安装NDK(sidebyside),成功后一般在......
  • Android 12.0 wifi设置静态ip功能实现
    1.前言在12.0的系统rom定制化开发中,在某些功能开发中,在wifi模块中,有产品需要要求设置wifi静态ip功能,而系统中wifi连接后ip是动态的,每次开机后连接wifi的ip就是不固定的,所以产品需要采用固定ip,就需要实现静态ip功能2.wifi设置静态ip功能实现的核心类frameworks\base\wifi\ja......
  • 字典get()方法使用案例
    '''字典对象提供了一个get()方法用来返回指定键对应的值,并且允许指定键不存在时返回特定的值'''Dict={'age':18,'sorce':'Zheng','sex':'male'}#输出键对应的值print(Dict['age'])print(Dict['sorce'])print(D......
  • 移动端Android跟ios兼容性问题,反人类!!!
    一、查询参数编码问题我们在日常开发中,有时候会遇到拼接参数特别多的情况,那么就会导致一行代码特别长。那么为了美观呢,有的同学会进行换行处理,如下代码:可以看到我红色框出来的地方就是经过了手动的回车导致产生的回车换行符。这么做乍一看也挺正常是吧,但其实对于JavaScript来说......
  • Android终端如何快速接入GB28181平台实现实时音视频回传
    技术背景GB28181是由中国国家标准委员会发布的基于IP网络的安防视频监控标准。Android平台GB28181设备对接模块,主要涉及到视频监控领域,可实现不具备国标音视频能力的Android终端,通过平台注册接入到现有的GB/T28181—2016服务,可用于如执法记录仪、智能安全帽、智能监控、智慧零售、......
  • Android经典实战之Textview文字设置不同颜色、下划线、加粗、超链接等效果
    本文首发于公众号“AntDream”,欢迎微信搜索“AntDream”或扫描文章底部二维码关注,和我一起每天进步一点点SpannableString在Android开发中是一个非常强大的工具,它允许你在单个字符串范围内应用多种样式。使用SpannableString,你可以为文本中的不同部分设置不同颜色,字体大小,字体......
  • 2-STM32F103+ML307(中移4G Cat1)基本控制篇(自建物联网平台)-整体运行测试-Android扫
    <p><iframename="ifd"src="https://mnifdv.cn/resource/cnblogs/ZLIOTB/ML307/my.html"frameborder="0"scrolling="auto"width="100%"height="1500"></iframe></p>  说明这节测试一......
  • android java BufferedWriter writer 需要关闭资源吗?
    在Android开发中,使用Java的`BufferedWriter`或其他类似的I/O资源时,**确实需要关闭资源**。这是因为:1.**释放系统资源**:关闭`BufferedWriter`会释放与之关联的底层资源,如文件句柄。2.**保证数据完整性**:确保所有写入操作完成并刷新缓冲区,这样数据才能被完整地写入到文件中。......
  • Android开机流程-从Init进程启动到进入Android桌面
    1.init进程启动流程Androidbootloader负责加载boot.img,将其内容放入内存,然后启动内核。内核接管之后,会解压并加载ramdisk到内存中,然后启动用户空间的第一个进程init。在Android系统启动过程中,ramdisk.img被内核直接解压到内存中并用作初始根文件系统。这一过程不是通过......
  • Android使用addr2line分析Native Crash
    NDK提供的工具将函数地址解析为具体的函数名和行数才能进一步分析问题。常用的地址转换工具有addr2line、ndk-stack等,个人比较喜欢addr2line,所以接下来介绍下该工具的基本使用方式日常使用过程中,只需要关注-C-f-e三个参数即可//-C:Demangle函数名//-f:显示函数名//......