我正在使用.net并将我的应用程序连接到azure。
在我的fb开发者帐户中,我有一个“myproject”应用程序位于仪表板上,位于“myproject-testing”下面,用于调试目的。 在我的本地机器上,它使用“myproject-testing”appId和appSecret将照片发布到Facebook。但它不会使用相同的appId和秘密从azurewebsites.net做到这一点。我已经使用faceook身份验证正确配置了azure。我不确定测试appId和appSecret是否可以预期。
我还没有联系过注册域名。
在azure上,当我尝试发布时,ajax请求会抛出内部服务器错误但是如果我注释掉
// client.Post(“我/照片”,参数);
ajax请求返回成功。
感谢。
答案 0 :(得分:2)
在azure上,ajax请求会引发内部服务器错误
根据例外情况,似乎在天蓝色运行期间出现代码错误。 正如您所说,它在本地计算机上正常工作。我认为可能在天蓝色的环境中找不到照片。
如果您使用的是Azure WebApp,则可以使用Visual Studio remote debug代码。
我做了一个C#Asp.net演示并将其发布到azure,它在我身边正常工作。
以下是我的测试演示。
1.创建一个Asp.net项目并引用Facebook SDK
2.添加名为images.jpg的图像文件到项目根路径
3.将以下代码添加到Page_load
var accessToken = "access token";
FacebookClient client = new FacebookClient(accessToken);
string path = AppDomain.CurrentDomain.BaseDirectory + "images.jpg";
var imgstream = File.OpenRead(path);
dynamic res = client.Post("/me/photos", new
{
file = new FacebookMediaStream
{
ContentType = "image/jpg",
FileName = Path.GetFileName(path)
}.SetValue(imgstream)
});
4.在本地机器上测试。
5.将其发布到Azure,我可以从Facebook页面获取已发布的照片。