Swift 1.2中的FBRequestConnection方法

时间:2015-04-13 05:15:16

标签: ios string facebook swift nsstring

[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,我收到错误

2 个答案:

答案 0 :(得分:0)

我相信你可以做HTTPMethod =“POST”

答案 1 :(得分:0)

好的,在尝试使用“参数:nil”并编译应用程序后,我发现问题不仅在于NSString,还在于NSDictionary。现在(我认为更好)我应该使用所有Swift本地人。

所以: “me / feed”和“POST”必须为字符串参数:params 必须为 Dictionary