Seperti tajuk, tanpa mengira kaedah curl, POST diberikan kepada data antara muka, tetapi antara muka tidak dapat memperolehnya atau terdapat masalah dengan mengembalikan parameter.
Siarkan kod:
$POSTFIELDS = array("receipt-data" => $receipt_data); //
$POSTFIELDS = json_encode($POSTFIELDS); // 注释了也没用
$url = "https://sandbox.itunes.apple.com/verifyReceipt";
$context = stream_context_create(array(
'http' => array(
'method' => 'POST',
'header' => "Content-type: application/x-www-form-urlencoded",
'content' => http_build_query($POSTFIELDS),
'timeout' => 20,
)
));
return file_get_contents($url, false, $context);
Format data $receipt_data betul kerana ujian curl boleh mengembalikan maklumat yang betul.
Tetapi untuk fail, parameter yang dikembalikan sentiasa salah tidak kira apa masalahnya.
Apa yang anda katakan di tingkat atas adalah betul Berkenaan masalah ini, ia sebenarnya adalah ralat semasa berinteraksi dengan antara muka pembayaran Apple dan menghantar data.
http_build_query tidak diperlukan
Mari kita lihat dahulu apa yang pelayan dapat. . . Adakah anda lulus json? Kemudian terdapat POST dalam format borang. . . Tanpa key=>value, bahagian belakang hanya boleh mendapatkan rentetan dalam format json
HTTPS perlu mendayakan SSL
Dapatkan ini untuk membantu anda
http://www.jb51.net/article/4...