6

Я реализовал платежи в своем приложении Unity и определил продукты в форме HTML на своем сервере и выполнил обход их с помощью инструмента отладки FB. Продукты идентичны примеру платежей Facebook, помимо ценообразования и наименования, а также ссылку на фото.Код ошибки API 1383146 в Facebook Canvas API для Unity при осуществлении платежа

Тем не менее, когда я бегу FB.Canvas.Buy после развертывания приложения на Canvas, я получаю следующее сообщение об ошибке:

An error occurred. Please try again later. 
API Error Code: 1383146 
API Error Description: invalid og type. Expected og:product, got website 

Эта ошибка не имеет никаких документов я могу найти в любой поисковой системе или на Собственная документация Facebook.

Любая помощь будет оценена, спасибо.

+0

Нужно больше кода, чтобы узнать, как вы обновляете данные. – K3N

ответ

1

Я нашел проблема была я проходил действительную URL в HTML продукта в диалоге оплаты труда, а не графа объекта ID.

При использовании идентификатора объекта графика я, наконец, могу выполнить покупки.

1

Я встречаю тот же код ошибки 1383146 и нашел причину. В начале я ожидаю, что URL-адрес продукта будет моим текущим адресом плюс product.html. Например. Моя страница https://a.b.c/def/ и я ожидаю FB разобрать мою страницу продукта https://a.b.c/def/product.html

var productURL = window.location.href + 'product.html'; 

    var obj = { 
     method: 'pay', 
     action: 'purchaseitem', 
     product: productURL 
    }; 

    FB.ui(obj, function(data) { 
     ... 
    }); 

Но я нашел FB добавит строку запроса при POST на мой холст страницы URL в некоторых случаях. URL станет https://a.b.c/def/?fb_source=search&ref=ts&fref=ts. Тогда мой код будет неправильным, потому что я использую window.location.href. Поэтому я обновляю код и никогда не встречаюсь с проблемой 1383146.

var productURL = window.location.protocol + "//" + window.location.host + window.location.pathname + 'product.html'; 

    var obj = { 
     method: 'pay', 
     action: 'purchaseitem', 
     product: productURL 
    }; 

    FB.ui(obj, function(data) { 
     ... 
    }); 
0

В моем случае, скребок Facebook не может достичь веб-сервера, хостинг продуктов (это может быть достигнуто только в нашем офисе, который я не знаю). В этом случае Facebook строит объект типа по умолчанию для типа, а затем жалуется на это.

Вы можете увидеть это в действии с помощью Отдела отклика Facebook. Введите URL-адрес своего продукта и нажмите кнопки «Отладка» и «Скрап-повтор». Он покажет «Предупреждения, которые должны быть исправлены». Он будет показывать только первое предупреждение по умолчанию, убедитесь, что вы показываете все предупреждения. Для меня одно из этих предупреждений дальше - «Не могу подключиться к серверу». Так что это была проблема REAL