我最近开始部署我的全功能的Twitter机器人(应该每天都会发布一个新的短故事)到我的Twitter个人资料。它通过CRON在Azure上的工作被调用,并且被托管在MVC 4项目中。来自Azure的TweetSharp?
然而,当我尝试在Azure上运行它(请记住,它工作正常本地),我收到以下错误:
[NetworkInformationException (0x5): Access is denied]
System.Net.NetworkInformation.SystemIPGlobalProperties.GetFixedInfo() +9059627
System.Net.NetworkInformation.SystemIPGlobalProperties.get_FixedInfo() +172
System.Net.NetworkInformation.SystemIPGlobalProperties.get_DomainName() +269
System.Net.CookieContainer..ctor() +121
Hammock.Web.WebQuery.AppendCookies(HttpWebRequest request) +242
Hammock.Web.WebQuery.SetRequestMeta(HttpWebRequest request) +147
Hammock.Web.WebQuery.HandleRequestMeta(WebRequest request) +146
Hammock.Web.WebQuery.BuildPostOrPutFormWebRequest(PostOrPut method, String url, Byte[]& content) +680
Hammock.Web.WebQuery.BuildPostOrPutWebRequest(PostOrPut method, String url, Byte[]& content) +168
Hammock.Web.WebQuery.ExecutePostOrPut(PostOrPut method, String url, WebException& exception) +181
Hammock.Web.WebQuery.Request(String url, WebException& exception) +252
Hammock.Authentication.OAuth.OAuthWebQuery.Request(String url, WebException& exception) +157
Hammock.RestClient.RequestImpl(RestRequest request) +943
Hammock.RestClient.Request(RestRequest request) +74
TweetSharp.TwitterService.WithHammockImpl(RestRequest request) +83
TweetSharp.TwitterService.WithHammock(WebMethod method, String path) +120
TweetSharp.TwitterService.SendTweet(SendTweetOptions options) +782
我想这是因为它使用了Azure不端口支持或类似的东西。或者是?我不知道从哪里开始解决这个问题,并且当我搜索它时,在网络上找不到任何帮助。
这是我的代码。正如你所看到的,访问令牌和秘密是硬编码的,他们(就像我说的)本地工作:
var service = new TwitterService("qwdwqdqwd", "qwdwqdqwdqwd");
service.AuthenticateWith("qwdqwdqwdqwd", "qwdqwdqwdwqd");
var status = "Collaborative short story of the day: Blah";
var response = service.SendTweet(new SendTweetOptions() {Status = status}); //crash!
问题是什么?
这确实是一个Azure网站。那么除非我为它提供服务,否则我没有希望? –
尝试使用云服务 - 如果它在那里工作,我恐怕Hammock应该改变他们执行Web请求的方式,或者您必须在您有更多的环境控制权的地方使用Cloud Service。 – astaykov