当前位置: 首页 > 知识库问答 >
问题:

如何在Swift 3中使用PUT方法发布数据?[副本]

何涵衍
2023-03-14

这里,我需要使用put方法将数据发送到服务器,但我无法发送它,它在Postman中运行良好。我的json函数是不是错了,如果它是错的,有人能帮我如何实现这个吗?

func itemsIncrementingandDecrementingtocartDownloadJsonWithURL(itemsApi: String){
        print(itemsApi)
        let url = URL(string: itemsApi)
        var request = URLRequest(url: url! as URL)
        request.httpMethod = "PUT"
        let parameters : [String: Any] = ["cartItem":
            [
                "item_id": itemId!,
                "qty": quantity!,
                "quote_id": "\(self.key!)"
            ]
        ]
        print(parameters)
        request.addValue("application/json", forHTTPHeaderField: "Content-Type")
        let session = URLSession(configuration:URLSessionConfiguration.default, delegate: nil, delegateQueue: nil)
        let dataTask = session.dataTask(with: request) { (data, response, error) -> Void in

            if error != nil {

                //handle error
            }
            else {

                let jsonStr = NSString(data: data!, encoding: String.Encoding.utf8.rawValue)
                print("Parsed JSON: '\(jsonStr)'")
            }
        }
        dataTask.resume()
    }

共有1个答案

杨起运
2023-03-14

试着加上这个。

let data = try! JSONSerialization.data(withJSONObject: parameters, options: JSONSerialization.WritingOptions.prettyPrinted)
request.httpBody = data
 类似资料:
  • 问题内容: 我正在使用PHP的函数来获取URL的内容,然后通过变量处理标头。 现在的问题是某些URL需要将一些数据发布到URL(例如,登录页面)。 我怎么做? 我意识到使用stream_context我可以做到这一点,但我并不完全清楚。 谢谢。 问题答案: 使用发送HTTP POST请求并不难,实际上:正如您所猜测的,必须使用参数。 在此页面的PHP手册中提供了一个示例:HTTP上下文选项 (引用

  • 我使用这个教程,我创建了这个表(id,用户名)打印;现在我要使用restful web服务向其插入数据 我应该在“内容”文本框中放入什么内容来完成此操作? 这是我的绘画课 @XmlRootElement(name=“Prints.findall”,query=“从Prints p中选择p”),@namedquery(name=“Prints.findbyid”,query=“从Prints p中选

  • 你能解释一下如何在改造2中使用hashmap发布数据吗?

  • 我从API23改为22,因为他们说httpclient不可用。当我切换到API22时,我遇到了HttpClient、HttpPost和NameValuePair的问题。我找到了使用HttpURLConnectionHandler的解决方案。但是我不知道如何将它用于下面的方法。 有人好心帮我一把

  • 我开发了一个应用程序。在我的应用程序中,我从相机或画廊拍摄一张图像。我想使用多部分发布图像到服务器,但图像不发布它。我的帖子数据如下

  • 当我试图在中使用URLSearchParams发布bodydata时,它在Chrome v72和Edge v40中工作,但在IE11(使用polyfills)上不工作。 在IE11:我得到这个错误: 错误:不支持的BodyInit类型 我在Edge/IE/etc浏览器中使用以下多边形填充: > whatwg fetch:“3.0.0”(一个窗口。fetch polyfill) url搜索参数pol