在 post 请求中将 JSON 传输到服务器

2023-12-05

服务器有两个参数:String and JSON。 提示,正确我转移JSON和 POST 请求中的字符串?

try {
    HttpClient httpClient = new DefaultHttpClient();
    HttpPost httpPost = new HttpPost("my_url");
    List parameters = new ArrayList(2);
    JSONObject jsonObject = new JSONObject();
    jsonObject.put("par_1", "1");
    jsonObject.put("par_2", "2");
    jsonObject.put("par_3", "3");
    parameters.add(new BasicNameValuePair("action", "par_action"));
    parameters.add(new BasicNameValuePair("data", jsonObject.toString()));
    httpPost.setEntity(new UrlEncodedFormEntity(parameters));
    HttpResponse httpResponse = httpClient.execute(httpPost);
    Log.v("Server Application", EntityUtils.toString(httpResponse.getEntity())+" "+jsonObject.toString());

} catch (UnsupportedEncodingException e) {
    Log.e("Server Application", "Error: " + e);
} catch (ClientProtocolException e) {
    Log.e("Server Application", "Error: " + e);
} catch (IOException e) {
    Log.e("Server Application", "Error: " + e);
} catch (JSONException e) {
    e.printStackTrace();
}

我不太确定您的问题是什么,但这是我发送 JSON 的方式(使用您的数据示例)。

Android / JSON 构建:

JSONObject jo = new JSONObject();
jo.put("action", "par_action");
jo.put("par_1", "1");
jo.put("par_2", "2");
jo.put("par_3", "3");

Android / 发送 JSON:

URL url = new URL("http://domaintoreceive.com/pagetoreceive.php");

HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url.toURI());

// Prepare JSON to send by setting the entity
httpPost.setEntity(new StringEntity(jo.toString(), "UTF-8"));

// Set up the header types needed to properly transfer JSON
httpPost.setHeader("Content-Type", "application/json");
httpPost.setHeader("Accept-Encoding", "application/json");
httpPost.setHeader("Accept-Language", "en-US");

// Execute POST
response = httpClient.execute(httpPost);

PHP/服务器端:

<?php
if (file_get_contents('php://input')) {
    // Get the JSON Array
    $json = file_get_contents('php://input');
    // Lets parse through the JSON Array and get our individual values
    // in the form of an array
    $parsedJSON = json_decode($json, true);

    // Check to verify keys are set then define local variable, 
    // or handle however you would normally in PHP.
    // If it isn't set we can either define a default value
    // ('' in this case) or do something else
    $action = (isset($parsedJSON['action'])) ? $parsedJSON['action'] : '';
    $par_1 = (isset($parsedJSON['par_1'])) ? $parsedJSON['par_1'] : '';
    $par_2 = (isset($parsedJSON['par_2'])) ? $parsedJSON['par_2'] : '';
    $par_3 = (isset($parsedJSON['par_3'])) ? $parsedJSON['par_3'] : '';

    // Or we could just use the array we have as is
    $sql = "UPDATE `table` SET 
                `par_1` = '" . $parsedJSON['par_1'] . "',
                `par_2` = '" . $parsedJSON['par_2'] . "',
                `par_3` = '" . $parsedJSON['par_3'] . "'
            WHERE `action` = '" . $parsedJSON['action'] . "'";
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 post 请求中将 JSON 传输到服务器 的相关文章

随机推荐

  • 结合多维 numpy 数组的切片和广播索引

    我有一个 ND numpy 数组 例如 3x3x3 我想从中提取一个子数组 组合切片和索引数组 例如 import numpy as np A np arange 3 3 3 reshape 3 3 3 i0 i1 i2 0 1 0 1 2
  • 如何在 Perl 中的替换中插入整个匹配的文本?

    我想添加一个字符串 A 在所有特定的其他字符串之后 bbc 所以 我匹配bbc并想将其替换为自身A附加 aabbcc gt aabbcAc 是否有替换的反向引用被整个匹配所取代 0似乎不起作用 由于某种原因 它的内容总是 e echo aa
  • 如何将索引 varchar(255) 从 utf8 更改为 utf8mb4 并且仍然保持在 767 最大密钥长度以下?

    我有一个 mysql 列需要支持 emoji 这意味着将 utf8 列转换为 utf8mb4 但是我的 varchar 255 不适合 只要该列被索引 不是唯一的 如何保留索引并获取 utf8mb4 排序规则 我尝试将长度减少到 191 但
  • 使用频域检测图像中的平行线

    我有一张带有直线的图像 我想使用频域检查这些线是否平行 我正在对图像进行快速傅立叶变换 得到变换图像 有谁知道如何使用变换图像来查找直线是否平行 So here are the two cases using either some ran
  • 如果某些脚本删除了先前加载或包含的脚本,那么在异步加载 Web 应用程序时会发生什么?

    问题是 如果某些脚本删除了先前加载或包含的脚本 那么在异步加载 Web 应用程序时会发生什么 让我们包含几个脚本 无论是通过标记包含还是通过 requireJS 动态包含 异步脚本包含的顺序都是相同的 MySquel js 文件的内容可能是
  • 在 Java 中使用 UDP 跨网络发送对象

    我还没有找到我遇到的问题的确切答案 所以无论如何我都会问这个问题 如果我确实重新发布了已经被问过的问题 我深表歉意 我正在为我的 Java 课程做另一项实验作业 在本周的实验中 我必须创建一个 UDP 服务器来通过网络发送 Message
  • Gradle 的外部依赖

    我熟悉使用构建大型应用程序make 但现在我已经开始使用 Android Studio 我想了解如何做我已经在Makefile 以下是一个可以帮助您构建答案的示例 生成文件示例 极简主义者 INK inkscape INKFLAGS exp
  • 修复了带有锯齿状数组的语句

    我有锯齿状数组 需要将其传递给外部方法 DllImport private static extern int NativeMethod IntPtr ptrArray fixed ulong ptr array 0 for int i 0
  • 使用 jquery 修改文本区域的撤消/重做行为

    当用户从上下文菜单中选择撤消 重做或在文本区域中按 ctrl z 时 我需要自己处理撤消和重做事件 我如何防止默认行为并添加自定义行为 您可以检测到ctrl z on keyup with var ctrlZ e ctrlKey e whi
  • Spring/Thymeleaf 在处理 @PostMapping 时抛出“无法在提交响应后创建会话”

    我使用 thymeleaf 视图构建了一个 Spring MVC 应用程序 并遇到了以下问题 我有一个页面应该处理表单并创建一个新实体以保留在数据库中 在我的控制器类中 我有两种方法 首先 GetMapping来渲染页面 GetMappin
  • TransactionScope 和 Oracle 的问题

    我们已经编写了一个使用 ODP NET 与 Oracle 数据库 11g 通信的 C 3 5 客户端 该应用程序有一个批处理过程 其中执行长时间运行的任务 在 TransactionScope 内对数据库进行各种调用 在我们的开发环境上一切
  • 为什么在 python 中修改局部变量是个坏主意?

    与此回复相关here 当地人的医生here 文档提到字典不应该改变 不确定它意味着什么 但会locals 适用于数据不会改变的实验室报告 例如测量 文档说的是 当你有本地x变量并做locals x 42 then x可能仍然指向旧对象 de
  • 汇编(Intel 语法 + NASM)错误:尝试在任何非本地标签之前定义本地标签

    我对装配很陌生 我正在尝试使用一个程序 因此 每当我尝试编译它时 我都会收到该行的错误 如代码中注释下所列 我想知道是否有人知道为什么当我为其余的汇编代码定义一些内容时 NASM 会检测到此错误 也许它与 main 的定义方式有关 附 我只
  • 三重存储中的开放世界假设和 SPARQL

    我想知道 SPARQL 默认情况下是否采用开放世界假设 或者这是否取决于执行 SPARQL 查询的三元组存储 这个假设在查询中的含义是什么 此致 Well 我想知道这对于这个网站来说是否真的是一个好问题 我想不会 但无论如何我都会往桶里扔几
  • Java应用程序,具有多个场景

    我正在开发一个 java 项目 我处理了所有功能 但是当涉及到 GUI 时 我是一个初学者 我想知道的是我可以使用java在一个阶段中显示不同的场景 就像在javaFX中一样吗 例如 我的起点是登录面板 登录后清空 Jframe 并显示下一
  • IBM Worklight 6.1 - 错误 TRAS0033E

    这是我第一次使用IBM Worklight 我有关注了这篇文章 但是 当我尝试从以下位置运行 Worklight Development Server 时 Servers view 我收到以下错误 TRAS0033E 详细方法跟踪的运行时注
  • 获取当前前台应用程序的名称

    我需要研究参与实验的一组测试用户实际使用了哪些应用程序 我想知道每个随机的第三方应用程序被用来进行统计的时间 如果可能的话 我计划通过 TestFlight 分发 iOS 应用程序 我的应用程序将收集应用程序使用情况统计信息并将其发送到我的
  • 正则表达式整个单词[重复]

    这个问题在这里已经有答案了 我觉得问这个问题有点傻 但从我读过的所有内容来看 这对我来说应该有效 但事实并非如此 我只是想使用正则表达式来匹配字符串中的整个单词 所以 如果我试图在句子中找到 the 这个词 它应该为 the Quick B
  • Azure Databricks python 命令显示当前集群配置

    我目前正在优化我们的 ETL 流程 并且希望能够看到处理数据时使用的现有集群配置 这样 我可以随着时间的推移跟踪我应该使用哪些工作节点大小 是否有一个命令可以在 python 中返回集群工作线程 和大小 以便我可以将其写入数据帧 您可以通过
  • 在 post 请求中将 JSON 传输到服务器

    服务器有两个参数 String and JSON 提示 正确我转移JSON和 POST 请求中的字符串 try HttpClient httpClient new DefaultHttpClient HttpPost httpPost ne