使用 Javascript 将内容发布到 Facebook API
Posting content to Facebook API using Javascript
我正在尝试 post 使用 Javascript 到 Facebook API。当内容硬编码在 Javascript 中时效果很好,但是当我从用户输入的文本框中收集内容时。它抛出同源策略错误:
这是我进行 posting 的地方。
FB.api('/1494363804210145/feed', 'post', postData,
function(response) {
console.log(JSON.stringify(response));
$("#status").val("Your Message as been posted!");
});
如果post数据是硬设置的,它可以工作:
var postData = {
message : "TEST",
name : "TEST",
from : 'pageid',
access_token : pageAccessToken,
description : "TEST"
};
如果post数据是动态的,则不起作用:
var postData = {
message : $("#postMessage"),
link : $("#postLink"),
picture : $("#postImage"),
name : $("#postTitle"),
from : 'pageid',
access_token : pageAccessToken,
description : $("#postDesc")
};
我没有使用任何类型的 IFrame。我该如何解决这个问题?
您需要附加 .val()
。现在您正在尝试 post jQuery object
。
var postData = {
message : $("#postMessage").val(),
link : $("#postLink").val(),
picture : $("#postImage").val(),
name : $("#postTitle").val(),
from : 'pageid',
access_token : pageAccessToken,
description : $("#postDesc").val()
};
我正在尝试 post 使用 Javascript 到 Facebook API。当内容硬编码在 Javascript 中时效果很好,但是当我从用户输入的文本框中收集内容时。它抛出同源策略错误:
这是我进行 posting 的地方。
FB.api('/1494363804210145/feed', 'post', postData,
function(response) {
console.log(JSON.stringify(response));
$("#status").val("Your Message as been posted!");
});
如果post数据是硬设置的,它可以工作:
var postData = {
message : "TEST",
name : "TEST",
from : 'pageid',
access_token : pageAccessToken,
description : "TEST"
};
如果post数据是动态的,则不起作用:
var postData = {
message : $("#postMessage"),
link : $("#postLink"),
picture : $("#postImage"),
name : $("#postTitle"),
from : 'pageid',
access_token : pageAccessToken,
description : $("#postDesc")
};
我没有使用任何类型的 IFrame。我该如何解决这个问题?
您需要附加 .val()
。现在您正在尝试 post jQuery object
。
var postData = {
message : $("#postMessage").val(),
link : $("#postLink").val(),
picture : $("#postImage").val(),
name : $("#postTitle").val(),
from : 'pageid',
access_token : pageAccessToken,
description : $("#postDesc").val()
};