[ORIGINAL QUESTION] 如何在Swift 1.2中将字符串传递给NSString的方法
我遇到了String和NSString的问题。使用Facebook SDK我正在使用:
FBRequestConnection.startWithGraphPath("/me/feed", parameters: params, HTTPMethod: NSString(string:"POST"), completionHandler:{(connection:FBRequestConnection!, result:AnyObject!, error:NSError?) -> Void in .... my code here ...})
在1.2工作正常之前,但现在我不知道该怎么做,我尝试过使用HTTPMethod:
HTTPMethod: NSString(string:"POST") as! /*(and also as? and as)*/ String
但似乎没有任何效果。我还使用 HTTPMethod:“POST”,但也是一个问题(因为函数需要NSString)
“'NSString'不能隐式转换为'String';你的意思是使用'as'来显式转换吗?”是错误。
还有: 无法使用类型'(字符串,参数:NSDictionary!,HTTPMethod:String,completionHandler:FBRequestHandler)' 的参数列表调用'startWithGraphPath'(如果我只使用字符串)
如何避免这个问题?
[UPDATE] 似乎问题在于参数:
我有:
params = NSDictionary(dictionary: [
"contentTitle" : _nameTxt.string,
"caption" : _captionTxt.string,
"contentDescription" : _descriptionTxt.string,
"contentURL" : "http://somelink.com/index.php",
"imageURL" : "http://somelink.com/media/image.png"
])
当我尝试: 参数:nil,应用程序编译 但是参数:params,我收到错误
答案 0 :(得分:0)
我相信你可以做HTTPMethod =“POST”
答案 1 :(得分:0)
好的,在尝试使用“参数:nil”并编译应用程序后,我发现问题不仅在于NSString,还在于NSDictionary。现在(我认为更好)我应该使用所有Swift本地人。
所以: “me / feed”和“POST”必须为字符串。 参数:params 必须为 Dictionary