سؤال

نحن نحاول دمج محفظة Google للسلع الرقمية مع تطبيق PHP أو منذ يومين، في 15 نوفمبر، تمكنا من تشغيله.ومع ذلك، عند التحقق مرة أخرى في اليوم التالي وحتى اليوم، على الرغم من أن الرمز ظل كما هو، إلا أننا لم نغير حرفًا فيه، ولا يزال لا يعمل، مما يعطينا هذا الخطأ:

اه اه.كان هناك مشكلة.

لم نتمكن من إكمال عملية الشراء بسبب مشكلة فنية.

تفاصيل المشكلة أدناه:لسوء الحظ، لم نتمكن من تأكيد عملية الشراء من خلال خادم التاجر.تم إلغاء طلبك.يرجى الاتصال بالتاجر إذا استمرت هذه المشكلة.

الكود الذي نستخدمه هو هذا:

    $response = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : file_get_contents("php://input");

    $response = substr_replace($response, "", 0, 4);   //remove "

    $response = JWT::decode($response, $sellerSecretKey);

    header("HTTP/1.1 200 OK");

وكما قلت، كان الأمر يعمل بشكل جيد منذ يومين ولدي شعور بأنه يعمل الآن أيضًا، لأنه في ملف السجل الخاص بنا تمت طباعة هذا الرد

كائن stdClass ([ISS] => Google [request] => stdClass Object ([name] => Product 1.[وصف] => أنت تشتري إجمالي منتج واحد من متجرنا.شكرًا لك.السعر] => 9.99 [CurrencyCode] => USD [SellerData] => اسم العميل ، عنوان البريد الإلكتروني)

[response] => stdClass Object
    (
        [orderId] => GWDG_S.c7a66f5b-4674-43f0-be16-2b72f69a7445
    )

[typ] => google/payments/inapp/item/v1/postback/buy
[aud] => 03083876603093172875
[iat] => 1384689627
[exp] => 1384689647

)

تم تحديد عنوان url لإعادة النشر بشكل صحيح ونحن نستخدم وضع الحماية لإجراء الاختبارات.

هل هذه مشكلة من جوجل؟هل يعملون على البرنامج أو شيء من هذا القبيل وهذا هو سبب المشكلة؟أم أننا نفعل شيئا خاطئا هنا؟.

أي مساعدة ستكون مرحب بها.شكرًا لك.

هل كانت مفيدة؟

المحلول

قصدت التعليق لكنه غير مناسب..

يشير هذا الخطأ إلى شيء ما في ملفك معالج إعادة النشر.لقد حاولت للتو وضع الحماية ويبدو أن الأمور على ما يرام.

أنا لا مطور php، لذا قد يكون هذا غير دقيق - هل ترد على إعادة النشر بـ orderId؟مرة أخرى، يعتمد هذا فقط على قراءتي للكود أعلاه (I يفكر لا أرى سوى http 200؟)

الشيء الآخر الوحيد الذي يمكنني التفكير فيه هو أن التأخر في الرد يزيد عن 10 ثوانٍ (؟) - وهو ما يمكن أن يفسر لماذا يمكن أن يكون سببا آخر قمت بتسجيل البيانات، ولكن جوجل ما زال ألغيته.

*اضرب من خلال نص:ستحصل على بيانات لتسجيلها لأن Google سترسل إليك البيانات، وما يهم هو ما إذا كنت تستجيب بشكل صحيح أم لا

بمجرد فك تشفير JWT باستخدام سر البائع الخاص بك، يمكنك التأكد من أن شراء الكعكة موافق وتسجيله. في غضون 10 ثانية لتلقي إعادة النشر، يجب على الخادم الخاص بك إرسال استجابة 200 موافق حيث المحتوى الوحيد هو قيمة حقل "معرف الطلب"..إذا لم يحدث ذلك، فستقوم Google بإلغاء المعاملة.

المرجع: https://developers.google.com/commerce/wallet/digital/docs/postback#responding

حث.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top