javascript - Facebook Messenger,发送回执时暂时发送消息失败

标签 javascript node.js facebook facebook-messenger

我想用虚拟数据向用户发送我的收据。

我使用 this library这简化了向 Facebook 发送消息的过程。

我的有效载荷的结构是这样的:

var payload = {
    template_type: 'receipt',
    recipient_name: '@' + user.name + ' ' + user.surname,
    order_number: (new Date).getTime(),
    currency: 'USD',
    payment_method: 'Наличными',
    order_url: 'http://www.example.com',
    timestamp: (new Date).getTime() + '',
    elements: [
        {
            title: title,
            subtitle: subtitle,
            quantity: 1,
            price: 20,
            currency: 'USD',
            image_url: image_url
        }
    ],
    address: {
        street_1:"Nurly tau",
        street_2:"",
        city:"Almaty",
        postal_code:"050000",
        state:"KZ",
        country:"KZ"
    },
    summary: {
        subtotal: 20,
        shipping_cost: 0,
        total_tax: 0,
        total_cost: 20
    },
    adjustments: []
};

我刚刚用简单的假数据填充了收据字段。此外,Facebook 会跟踪所有已发送收据的 order_numbers 的唯一性。

当我尝试发送此收据时,我收到一条错误消息:

{ message: '(#1200) Temporary send message failure. Please try again later',
  type: 'OAuthException',
  code: 1200,
  fbtrace_id: 'BHmHRCEQUC4' }

这个错误是什么意思? Facebook 的错误信息如此神秘?

最佳答案

我刚刚遇到了同样的问题,经过一番摆弄后我弄明白了!问题是,当您使用 (new Date).getTime() 构建时间戳时,它会返回自纪元以来的毫秒数。但是,Facebook 要求它以秒为单位。

关于javascript - Facebook Messenger,发送回执时暂时发送消息失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36749184/

相关文章:

javascript - 使用两个之间条件查询 Firebase 数据库

python - 使用 ec2 创建存储在 s3 上的图像缩略图并在完成时与 rails 通信的优雅方式?

ios - 快速发布到 Facebook 不起作用?

ios - 如何获取facebook好友的公开信息。?

javascript - `style` 属性是元素上的 `null`

javascript - EntryPointNotFoundException 外部 JS 库错误

node.js - 构建时从 React Metro Bundler 中排除特定包

ios - 是否可以将 UI 图像与指定的链接共享到 FB?

image - 如何在 Greasemonkey 中用 img src url 替换图像链接

node.js - 避免总计 16MB 的限制