我设法得到一个按钮来调用facebook支付对话框,一切都很花哨,它打开了正确的数据,并在正确的时间用正确的数据调用了购买回调页面。
现在虽然它在加载后没有显示(尽管我认为任何数据(甚至代码)都没有改变)。
当我单击按钮时,付款对话框打开并显示加载,并且在对话框打开时完成的购买回调页面完成的所有数据库更改都正确且完整地完成。接下来加载对话框消失,我的 javascript 回调函数没有被调用,也没有其他任何事情发生。
如果我更改数据,例如,价格是一个字符串而不是一个数字,那么我会打开支付对话框并显示正确的错误,而不仅仅是加载屏幕,并调用我的回调函数。
我不确定问题出在哪里,这是我调用支付 UI 的代码:
FB.ui({
method: 'pay',
order_info: {
pkgnum: d.id,
title: d.name,
description: d.desc,
price: d.cost,
image_url: 'images/coin.png',
product_url: 'images/coin.png',
userid: username
},
purchase_type: 'item'
}, fbPurchaseCallback );
这是 UI 接收到的用于显示项目付款信息的数据:
{
"content":[{
"pkgnum":20,
"title":"Lolname",
"description":"Loldesc",
"price":100,
"image_url":"images/coin.png",
"product_url":"images/coin.png",
"userid":"254884",
"item_id":"254884"
}],
"method":"payments_get_items"
}