gpt4 book ai didi

ios - 如何在 Swift 中发送这样的 HTTP POST?

转载 作者:行者123 更新时间:2023-11-28 11:05:51 24 4
gpt4 key购买 nike

{
"appId":"YOUR_APP_ID",
"appKey":"YOU_APP_KEY",
"queries":{
"item_name":"Kids Fries",
"brand_name":"McDonalds"
}
}

我知道如何处理 postString 中的前两项(appId、appKey),但我不知道“查询”的格式是什么,我尝试了以下方法,但没有用:

let request = NSMutableURLRequest(URL: url! )
request.HTTPMethod = "POST"
let postString = "appId=myId9&appKey=myKey&queries={item_name=burger&brand_name=McDonalds}"
request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)

最佳答案

服务器期望什么内容类型?

您在第一部分显示 application/json,但在第二部分显示 application/x-www-form-urlencoded


如果你需要application/json,那么

let request = NSMutableURLRequest(URL: url!)
request.HTTPMethod = "POST"
request.addValue("application/json", forHTTPHeaderField: "Content-Type")
let postString = "{\"appId\":\"myId\", \"appKey\":\"myKey\", \"queries\":{\"item_name\":\"Kids Fries\", \"brand_name\":\"McDonalds\"}}"
request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)

如果您真的需要application/x-www-form-urlencoded,那么就需要进行一些猜测。为什么不尝试使用点语法。

let request = NSMutableURLRequest(URL: url!)
request.HTTPMethod = "POST"
request.addValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
let postString = "appId=myId&appKey=myKey&queries.item_name=burger&queries.brand_name=McDonalds"
request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)

关于ios - 如何在 Swift 中发送这样的 HTTP POST?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37715335/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com