在 URL 请求中提交 Decimal/Float Swift
Submit Decimal/Float in URL Request with Swift
如何使用 swift 在 URL POST 请求中传递诸如“1.5”的值?
例如:
let number = "1.5"
let numberValue = number.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
let server:String = "www.someserver.com"
let phpFile:String = "/php/SomePHPScript.php"
let baseURL = NSURL(string: "http://\(server)\(phpFile)")
let url = NSURL(string: "?value=\(numberValue)", relativeToURL: baseURL)
let cachePolicy = NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData
var request = NSMutableURLRequest(URL: url!, cachePolicy: cachePolicy, timeoutInterval: 10.0)
request.HTTPMethod = "POST"
var dataString = ""
let requestBodyData = (dataString as NSString).dataUsingEncoding(NSUTF8StringEncoding)
request.HTTPBody = requestBodyData
// etc...
这编译正常,但在执行时崩溃。似乎将其转换为 JSON 可以解决问题,但是有更清洁的方法吗?
编辑
stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding) returns
可选。它需要打开。
stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
returns 可选。它需要被打开。
如何使用 swift 在 URL POST 请求中传递诸如“1.5”的值?
例如:
let number = "1.5"
let numberValue = number.stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
let server:String = "www.someserver.com"
let phpFile:String = "/php/SomePHPScript.php"
let baseURL = NSURL(string: "http://\(server)\(phpFile)")
let url = NSURL(string: "?value=\(numberValue)", relativeToURL: baseURL)
let cachePolicy = NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData
var request = NSMutableURLRequest(URL: url!, cachePolicy: cachePolicy, timeoutInterval: 10.0)
request.HTTPMethod = "POST"
var dataString = ""
let requestBodyData = (dataString as NSString).dataUsingEncoding(NSUTF8StringEncoding)
request.HTTPBody = requestBodyData
// etc...
这编译正常,但在执行时崩溃。似乎将其转换为 JSON 可以解决问题,但是有更清洁的方法吗?
编辑
stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding) returns
可选。它需要打开。
stringByAddingPercentEscapesUsingEncoding(NSUTF8StringEncoding)
returns 可选。它需要被打开。