Директно съобщение на Graph API за страница: как да извлечете връзка към прикачен файл

Трябва да съхраня връзката към файл, прикачен към директно съобщение (за страница, извлечена с „/conversations“). Как мога да направя това?

Знам как да получа връзка към изображение. JSON-обектът за изображение ("attachments") съдържа етикета "image_data", който съдържа таговете "url" и "preview_url" за достъп до изображението.

За прикачени файлове (в моя случай, напр. PDF), FB изпраща само „id“, „mime_type“, „name“ и „size“, но без допълнителни данни. Пример:

"id": "m_id.158623824339344"
 ....
"attachments": {
    "data": [
     {
        "id": "7b84fd4c0f18fb4060ae0fe0dcfeb42e",
        "mime_type": "application/pdf",
        "name": "Attachment1.pdf",
        "size": 80798
      }
    ]
 }

Но когато вляза във FB като потребител и щракна върху прикачения файл в браузъра, получавам тази връзка:

https://www.facebook.com/ajax/messaging/attachment.php?attach_id=<attach_id>&mid=id.<mid>&pageid=<pageid>&ext=<ext>&hash=AQCafpYeZj2pSjRk

Чрез проба и грешка открих, че е възможно да осъществя достъп до файла без частите "hash" и "ext". Това означава, че на теория мога да генерирам тази връзка в моето приложение („attach_id“ и „mid“ са предоставени със съобщението и аз знам моя pageid).

Но това изглежда много ненадеждно. Тази връзка може да се промени по всяко време, нарушавайки приложението ми.

Търсих много, но не можах да намеря документация за това. Някой знае ли по-добро решение? Или може някой да ме насочи към някаква документация относно този проблем?

Благодаря много!

Барбара


person user2458859    schedule 04.09.2013    source източник
comment
Направих абсолютно същото. Изглежда, че Facebook връща празна страница, когато се опитате да получите достъп до прикачен файл, когато не сте влезли. Така че това е поне един случай на употреба, при който това не успява.   -  person dirkbonhomme    schedule 04.02.2014


Отговори (1)


За съжаление това не е налично от v2.5.

Ако това стане нова функция в бъдеще, трябва да можете да я намерите в документацията: https://developers.intern.facebook.com/docs/graph-api/reference/v2.5/съобщение/прикаченифайлове

person Xiao    schedule 07.01.2016