C#学习教程:直接上传图片到twitter不能使用wp7将图片上传到Twitter吗?我通过使用Hammock.WindowsPhone.Mango库为此制定了一个解决方案。(TweetSharp在内部使用Hammock库来实现oAuth和其他功能,但我从未使用过TweetSharp或Twitterizer)我从Nuget安装了最新版本的Hammock,然后使用以下代码将照片上传到Twitter:publicvoiduploadPhoto(StreamphotoStream,stringphotoName){varcredentials=newOAuthCredentials{Type=OAuthType.ProtectedResource,SignatureMethod=OAuthSignatureMethod.HmacSha1,ParameterHandling=OAuthParameterHandling.HttpAuthorizationHeader,ConsumerKey=TwitterSettings.consumerKey,ConsumerSecret=TwitterSettings.consumerKeySecret,Token=TwitterSettings.accessToken,TwitterSettingSecre.accessTokenSecret,Version="1.0a"};RestClientrestClient=newRestClient{Authority="https://upload.twitter.com",HasElevatedPermissions=true,Credentials=credentials,Method=WebMethod.Post};RestRequestrestRequest=newRestRequest{Path="1/statuses/update_with_media.json"};restRequest.AddParameter("状态",tbxNewTweet.Text);restRequest.AddFile("媒体[]",photoName,photoStream,"图片/jpg”);}restClient.BeginRequest(restRequest,newRestCallback(PostTweetRequestCallback));}privatevoidPostTweetRequestCallback(RestRequestrequest,Hammock.RestResponseresponse,objectobj){if(response.StatusCode==System.Net.HttpStatusCode.OK)//Successcode}}这里photoName为选中图片的名称("e.OriginalFileName")photoStream在PhotoChooserTask中为"e.ChosenPhoto"需要注意的是.AddFile()的第四个参数(执行本例时我没有考虑其他格式,你必须小心你的应用程序)我希望这有帮助!LINQtoTwitter支持WP7并且有一个TweetWithMedia方法,它的工作方式如下:privatevoidPostButton_Click(objectsender,RoutedEventArgse){if(string.IsNullOrWhiteSpace(TweetTextBox.Text))MessageBox.Show("Pleaseentertexttotweet.");ITwitterAuthorizerauth=SharedState.Authorizer;if(auth==null||!auth.IsAuthorized){NavigationService.Navigate(newUri("/OAuth.xaml",UriKind.Relative));}else{vartwitterCtx=newTwitterContext(auth);varmedia=GetMedia();twitterCtx.TweetWithMedia(TweetTextBox.Text,false,StatusExtensions.NoCoordinate,StatusExtensions.NoCoordinate,null,false,media,updateResp=>Dispatcher.BeginInvoke(()=>{HandleResponse(updateResp);}));}}Joe的以上就是C#学习教程:直接上传图片到twitter分享全部内容,如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
