Я пытаюсь использовать JavaScript SDK, чтобы опубликовать заметку с моего сайта, а затем сразу же разрешить размещение комментария к этой заметке. Я успешен в первой части. Вот соответствующий фрагмент:
alert('posting to path (' + path + ') with params (' + JSON.stringify(params) + ')');
FB.api(path, "post", params, function(response) {
if (response.error) {
alert(response.error.type + ": " + response.error.message);
} else {... do stuff ...}
Обратите внимание, что я сбрасываю переменные, которые передаю для проверки. Результаты выглядят следующим образом:
При публикации заметки:
posting to path (/100003217376622/notes) with params ({"access_token":"AAAChRmSu9s8BACFDhWCFnIS8R3OTZCSxZAyL4hLbAQxGUrn0t4ksZC5CS62qlLtAIconOKCreAUpaorzOZCHkxp2DlTfcc2c8vOY5MOLPdHMqdfWMu2V","subject":"Note #1","message":"My note"})
Это отлично работает, и число, предшествующее «/notes», является идентификатором моего профиля.
Однако впоследствии я пытаюсь опубликовать комментарий к этой заметке и получаю следующее.
При публикации комментария к этой заметке:
posting to path (/124528970997681/comments) with params ({"access_token":"AAAChRmSu9s8BACFDhWCFnIS8R3OTZCSxZAyL4hLbAQxGUrn0t4ksZC5CS62qlLtAIconOKCreAUpaorzOZCHkxp2DlTfcc2c8vOY5MOLPdHMqdfWMu2V","message":"Comment on Note # 1"})
Это приводит к ошибке, показанной ниже:
OAuthException: (#200) Cannot access object_id: 124528970997681
Число, предшествующее «/comments», на самом деле является идентификатором заметки, так как при наведении курсора на ссылку заметки на моей стене я вижу этот URL-адрес: http://www.facebook.com/notes/danja-garno/note-1/124528970997681, что действительно приводит меня к Примечание.
Есть идеи, почему я получаю эту ошибку?
============================= ОБНОВЛЕНИЕ ============= =====================
Сегодня утром я разместил ссылку вместо заметки, а затем успешно разместил комментарий через ту же форму и код.
Я заметил две вещи, которые могут дать ключ к разгадке. Во-первых, постоянная ссылка для link выглядит так:
http://www.facebook.com/permalink.php?story_fbid=285359141511345&id=100003217376622
А постоянная ссылка для заметки выглядит так:
http://www.facebook.com/notes/danja-garno/note-this-note/127723150678263
ТАКЖЕ, когда я напрямую обращаюсь к этим объектам через URL API Graph, я получаю два разных ответа.
Я получил правильный ответ для ссылки с помощью этого URL https: // графика .facebook.com/141246962656776?access_token=AAAChRmSu9s8BAKedPE9DyZB5W0lQYgn71WkFFtR0wIBMHp3Qgr09vmZA7YhvzJbgoigQRHsaqXqOhpmrbzdhWd6QYV8jHvsKjSVMpLZBTDp8GI9Lax7Lax7
<Сильный> НО , когда я попытался получить доступ к <сильный> Примечание таким же образом, используя этот URL https://graph.facebook.com/124528970997681?access_token=AAAChRmSu9s8BAKedPE9DyZB5W0lQYgn71WkFFtR0wIBMHp3Qgr09vmZA7YhvzJbgoigQRHsaqXqOhpmrbzdhWd9aGIxDV8jHvsKZ
Все, что он вернул, было «ложным». Что случилось с этим?
1 ответ
Наконец-то я смог найти время, чтобы попробовать это.
Я могу опубликовать заметку, а затем опубликовать комментарий к этой заметке через Graph API. Я все еще думаю, что это проблема синхронизации, когда граф медленно сохраняет заметку во всех местах, где это необходимо (и база данных графа может быть последним хранилищем данных, которое будет реплицировано). Поэтому я бы предложил поместить комментарий в очередь ожидания для обработки в более позднее время (возможно, дать ему 1 минуту).
Похожие вопросы
Новые вопросы
post
POST является одним из методов протокола HTTP; он используется, когда клиенту необходимо отправить данные на сервер, например, при загрузке файла или отправке заполненной формы. Слово post имеет несколько значений, но этот тег предназначен именно для запросов HTTP POST.