2015-06-05 41 views
1

在Swift中,我试图发布一个请求(使用NSURLSession)来登录WebAPI Web服务的用户。如何设置HTTPBody?

的URL是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

你几乎在那里,你只需要把字符串变成一个NSData对象。如果您的字符串位于名为body的变量中,您的代码将看起来像request.HTTPBody = body.dataUsingEncoding(NSUTF8StringEncoding)