2013-08-21 52 views
0

我已經參考了演示FHSTwitterEngine在iOS中發佈推文。FHSTwitterEngine無法發佈帶有圖片的推文

要發佈與圖像的鳴叫我已經使用這個方法,

- (NSError *)postTweet:(NSString *)tweetString withImageData:(NSData *)theData 

它失敗response.statusCode403

返回數據顯示了這個消息:

{"errors":[{"code":195,"message":"Missing or invalid url parameter"}]} 

參數tweetStringtheData通過不nil

如果我只發佈文本爲原創,它是成功的。

可能是什麼問題?任何指針?

回答

1

https://github.com/fhsjaagshs/FHSTwitterEngine/blob/master/FHSTwitterEngine/FHSTwitterEngine.m

請,祝你好運!

====

我已經提到了演示FHSTwitterEngine在iOS版發佈的tweet。

要發佈與圖像鳴叫我已經使用這個方法,

  • (NSError *)postTweet:(的NSString *)tweetString withImageData:(NSData的*)海圖 它失敗response.statusCode爲403。

返回數據顯示了這種消息:

{ 「錯誤」:[{ 「代碼」:195, 「消息」: 「缺少或無效的URL參數」}]} 參數tweetString和海圖傳遞不是零。

如果我只發佈文本爲原創,它是成功的。

可能是什麼問題?任何指針?

0

錯誤說你錯過了URL的無效參數首先檢查它嗎?如果確保你必須通過所有必需的參數。然後將您的URL字符串轉換爲合法的URL。諸如此類,

NSString *urlString = [NSString stringWithFormat:@"URL_STRING"]; 
NSURL *myUrl = [NSURL URLWithString:[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]; 

欲瞭解更多信息有關stringByAddingPercentEscapesUsingEncoding.

+0

除了改變「postTweet」到「postTweet withImageData」,我不會改變這個demo.so我想你問的URL字符串是什麼@「的https:/ /api.twitter.com/1.1/statuses/update_with_media.json「 – Sing

+0

將此網址替換爲** URL_STRING ** – iPatel

+0

這不起作用,結果相同。 – Sing

0

試試這個圖像局部

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,  NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:@"savedImage.png"]; 

NSData *ImageData;//= [NSData dataWithContentsOfURL:url]; 
UIImage *image = img.image; 

ImageData=UIImagePNGRepresentation(image); 
[ImageData writeToFile:savedImagePath atomically:NO]; 



if ([TxtField.text isEqualToString:@""]) { 
    [[TwitterEngine sharedManager]postTweet:@"This is test image" withImageData:ImageData]; 

} 
else 
[[TwitterEngine sharedManager]postTweet:TxtField.text withImageData:ImageData];