我正在尝试使用 asp.net 和 MVC3 创建一个 Facebook 移动应用程序,并将 Facebook Credits 集成为一种支付方式。首先,考虑到最近的公告,现在是否有可能拥有一个接受 Facebook Credits 的移动 Web 应用程序?
如果是这样,我采用了以下帖子中提供的示例
http://www.m-webs.com/blog_facebookcredits.html
并实现了以下控制器动作:
public JsonResult CallBack()
{
string fborder_info = Request.Form["order_info"];
string fborder_id = Request.Form["order_id"];
string fbmethod = Request.Form["method"];
if (fbmethod == "payments_get_items")
{
fborder_info = fborder_info.Substring(1, (fborder_info.Length - 2)); // remove the quotes
ulong credscost = 2; // Price of purchase in facebook credits
var theItem = new FacebookBuyItem()
{
item_id = 123456789,
description = "Own yours today!",
price = credscost,
title = "Digital Unicorn",
product_url = "http://www.facebook.com/images/gifts/21.png",
image_url = "http://www.facebook.com/images/gifts/21.png"
};
var res = new Dictionary<string, object>();
res["method"] = fbmethod;
res["order_id"] = fborder_id;
res["content"] = new object[] { theItem };
var jss = new JavaScriptSerializer();
var ob = jss.Serialize(res);
ob = ob.Replace("#$", @"\/".Replace("//", @"\/"));
return Json(ob, JsonRequestBehavior.AllowGet);
}
return null;
}
我已验证 facebook 正在请求回调,并且我还捕获了发送回的响应,该响应似乎包含显示购买对话框所需的所有信息,但我仍然收到以下错误消息:
API 错误代码:1151 API 错误描述:抱歉,此应用可能不符合接受 Facebook Credits 的条件。如果此应用之前接受过积分,请重试。错误消息:无效的应用程序
从移动浏览器测试时:
抱歉,我们在处理您的付款时遇到了问题。您没有为此交易支付任何费用。请再试一次。
我还注意到我的回调被请求两次,这似乎也不正确。
任何有关如何让我的集成启动和运行的见解将不胜感激。我的 Facebook AppId 是 177876855621874
谢谢。