如何设置HTTPBody?

时间:2015-06-05 20:19:23

标签: ios swift nsurlrequest

在Swift中,我尝试发布帖子请求(使用NSURLSession)来登录用户访问WebAPI网络服务。

网址为www.myurltest.com/Token,我必须将以下字符串作为POST正文传递:

grant_type=password&username=MyUsername&password=MyPassword.

所以在斯威夫特我做过:

let session = NSURLSession.sharedSession();

let url = NSURL(string:"www.myurltest.com/Token");
let request = NSMutableURLRequest(URL: url!)
request.setValue("application/x-www-form-urlencoded; charset=utf-8", forHTTPHeaderField: "Content-Type")
request.HTTPMethod = "POST"

现在我想设置POST主体(这是一个字符串),但我不知道如何:

request.HTTPBody = ?????

感谢。

1 个答案:

答案 0 :(得分:2)

你几乎就在那里,你只需要将字符串转换为NSData对象。如果您的字符串位于名为body的变量中,则代码将类似于request.HTTPBody = body.dataUsingEncoding(NSUTF8StringEncoding)