【问题标题】:How to send '&' character in HTTP request body?如何在 HTTP 请求正文中发送“&”字符?
【发布时间】:2016-10-21 09:07:23
【问题描述】:

我将这些参数保存为字符串:

title=Culture, sport & recreation (1 day)&useremail=ammar@gmail.com&days=2&ispredefined=false&languageid=1&websiteid=1&node=item&languageid=1&websiteid=1&moduletype=Accommodation&moduleuniquename=abu.dhabi.plaza.hotel.apartments&dayindex=1

我正在使用以下代码将其传递给请求正文:

let request = NSMutableURLRequest(URL: URL.getURL(url)!)
        let session = NSURLSession.sharedSession()
        request.HTTPMethod = "POST"
        request.HTTPBody = params.dataUsingEncoding(NSASCIIStringEncoding)

但问题是字符串 title=Culture, Sport & Recreation 中的标题有 '&' 字符,我收到来自服务器的 400 bad Request

请问如何解决这个问题?

【问题讨论】:

标签: swift post http-post


【解决方案1】:

正如您在所附链接中看到的,您必须对 & 符号进行编码。

encodeURIComponent('&') 给出“%26”

因此,您必须将所有与符号替换为 %26 或在代码中使用 encodeURIComponent(str)

escaping ampersand in url

How can I send the "&" (ampersand) character via AJAX?

【讨论】:

  • 非常感谢@Stefan Dolezel
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-06-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-13
  • 2013-10-07
  • 1970-01-01
相关资源
最近更新 更多