Я пытаюсь интегрировать Facebook Credits в качестве способа оплаты, используя as3-sdk. Мне удалось заставить работать «earn_credits» и «buy_credits». Однако третий и самый важный параметр «buy_item» не отображает диалог оплаты. Как бы то ни было, причина в вызове callback.php. Примечание. Я набрал URL-адрес обратного вызова в настройках моих приложений, поэтому я не забыл об этом. Я использую пример php-файла из документов для разработчиков Facebook.Включите Facebook Credits с AS3-SDK
Это мой код as3.
public static function buyItem():void
{
var theAction:String = "buy_item";
var order_info:Object = { "item_id":"1a" };
var jOrder:String = JSON.encode(order_info);
var data:Object = {
action:theAction,
order_info:jOrder,
dev_purchase_params: {"oscif":true}
};
Facebook.ui("pay", data, purchaseCallback);
}
Я думаю, что json-кодирование может быть проблемой, но я не уверен.
Я использую файл пример PHP от Facebook Developer (DOCS отрывок):
<?php
$app_secret = '***********************';
// Validate request is from Facebook and parse contents for use.
$request = parse_signed_request($_POST['signed_request'], $app_secret);
// Get request type.
// Two types:
// 1. payments_get_items.
// 2. payments_status_update.
$request_type = $_POST['method'];
// Setup response.
$response = '';
if ($request_type == 'payments_get_items') {
// Get order info from Pay Dialog's order_info.
// Assumes order_info is a JSON encoded string.
$order_info = json_decode($request['credits']['order_info'], true);
// Get item id.
$item_id = $order_info['item_id'];
// Simulutates item lookup based on Pay Dialog's order_info.
if ($item_id == '1a') {
$item = array(
'title' => '100 some game cash',
'description' => 'Spend cash in some game.',
// Price must be denominated in credits.
'price' => 1,
'image_url' => '**********************/banner1.jpg',
);
// Construct response.
$response = array(
'content' => array(
0 => $item,
),
'method' => $request_type,
);
// Response must be JSON encoded.
$response = json_encode($response);
}
Любая помощь, действительно ценится.
Большое спасибо! Я заметил, что вы не используете кодированную json строку. Но кредиты callback.php с страницы разработчиков fb ожидают, что order_info будет кодировкой json. вы знаете пример callback.php aw/o json code? – TicketToRide
Прошу прощения, мне нужно будет изучить его больше ... как я уже сказал, это не мое решение, и я даже не пробовал это себя. –