搜尋

首頁  >  問答  >  主體

php - file_get_contents實現POST數據,https

如題,不考慮curl的方法,POST給介面數據,可是介面取得不到或一直回傳參數有問題。

貼一下程式碼:

    $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);

$receipt_data資料格式是正確的,因為用curl測試可以回傳正確資訊。

但是file的話,無論如何總是回傳參數不對,不知道哪裡的問題。

给我你的怀抱给我你的怀抱2783 天前712

全部回覆(3)我來回復

  • 伊谢尔伦

    伊谢尔伦2017-05-27 17:44:27

    樓上說的是沒錯,針對這個問題,其實是跟蘋果支付介面交互,傳輸資料的時候出錯了。

    http_build_query不需要

    回覆
    0
  • 某草草

    某草草2017-05-27 17:44:27

    先看看服務端取得到的是什麼。 。 。你這個傳的是json?然後又是表單格式的POST。 。 。沒有key=>value,後端能取到的也只能是json格式的字串

    回覆
    0
  • ringa_lee

    ringa_lee2017-05-27 17:44:27

    HTTPS 需要開啟SSL
    取得這個可以幫你
    http://www.jb51.net/article/4...

    回覆
    0
  • 取消回覆