簡體   English   中英

如何使用 JSON 而不是字符串發送 POST 請求?

[英]How send POST request with JSON, NOT as string?

我的應用程序以這種方式發送 POST 請求:

URL url = new URL(SERVER_URL);
HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
urlConnection.setRequestMethod(method);
urlConnection.setDoOutput(true);
urlConnection.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
urlConnection.setRequestProperty("Accept", "application/json");
urlConnection.connect();

// Write
OutputStream output = urlConnection.getOutputStream();
OutputStreamWriter writer = new OutputStreamWriter(output, "UTF-8");
writer.write(jsonString);
writer.close();
output.close();
urlConnection.disconnect();

但是 API 無法對其進行解碼,因為它是一個字符串。 所以:

$input = json_decode(file_get_contents('php://input'), true);

只返回一個空數組。

如何在請求正文中僅寫入 JSON?

也許你需要解析你的jsonString 所以你的代碼應該是:

writer.write(JSON.parse(jsonString));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM