我正在 Windows 8 中构建 Metro 应用程序,我希望它能够与 Facebook 同步。我想在我的 jsp 文件中显示图片。在用户单击他收到的 facebook 通知后,将显示 jsp 文件。
当我只问用户的名字时,我成功了,但是当我问个人资料图片时,我遇到了障碍。
我为 Facebook 创建了一个 XMLHTTPRequest,Facebook 将我作为响应“JFIF”发送给我。
function getFacebookPicture(facebookUser) {
var request = new XMLHttpRequest();
var str = "https://graph.facebook.com/" + facebookUser.id + "/picture";
request.open("GET", str, false);
request.send();
var response = request.responseText;
return response;
}//getPic()
响应 = “JFIF”。
我收到并发送通知。
function sendNotification2() {
var uid = facebookUser.id;
var picture = getFacebookPicture(facebookUser);
var request = new XMLHttpRequest();
var appID = "XXXXXX"; // the app id
var appSecret = "YYYYYYYY"; // the app secret
var notificationContent = "YO yo yo"; // the message on the notification.
var str = "https://graph.facebook.com/" +
uid + "/notifications?access_token=" +
appID + "|" + appSecret + "&href=?name=" + facebookUser.name +"?picture="+ picture + "&template=" +notificationContent + "&method=POST&format=json";
request.open("GET", str, false);
request.send();
var response = request.responseText;
}
我得到的错误是
{
"error": {
"type": "OAuthException",
"message": "An access token is required to request this resource."
}
}
我在我的应用程序中添加了权限:read_friendlists、manage_notifications、publish_stream、offline_access、user_photos 登录时。
那么我怎样才能得到图片呢?
谢谢。