0

URL から json データを取得するときに問題が発生しました。

URLはhttp://farmapi.fastway.org/v3/psc/lookup/MEL/Point%20cook/3030?LengthInCm=30&WidthInCm=30&HeightInCm=30&WeightInKg=4&api_key=MY_API_KEY

urlencodeを使ってポイントクックをエンコードしてみました。しかし、それは機能していません。ただし、この URL はブラウザに直接貼り付けると機能します。

URLを送信するために使用したコードは次のとおりです。

$curl = curl_init( $url );
curl_setopt($curl, CURLOPT_USERAGENT, 'PHP/' . phpversion());
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HEADER, FALSE);
curl_setopt($curl, CURLOPT_TIMEOUT, 60);
$response = curl_exec( $curl );
echo '<pre>post_request response' . print_r( $response, true) . '</pre>';
if (curl_errno( $curl )) {
    $this->response = curl_error( $curl );
    return $this->response;
    curl_close( $curl );
}

curl_close( $curl );

またはこれ:

$response = wp_remote_post( $url, array(
    'method'    => 'POST',
    'timeout'   => 70,
    'sslverify' => 0
    ) );

誰かがこの問題から私を助けたり、解決策を教えてくれますか? 本当に感謝します。

4

1 に答える 1

0

hakre と Colin Morelli に感謝します。皆さんが提供した回答から、コードの本当の問題を見つけました。

まず使用することrawurlencodeです。この関数は、正しい形式である にpoint cook変わります。関数は、サーバー側で受け入れられないものになります。point%20cookurlencodepoint cookpoint+cook

Colin Morelli が言及した 2 番目の問題は、心配する方法を使用して URL を送信したことです。POST の代わりに GET を使用する必要があります。

みんなありがとう!!!

于 2013-03-16T12:45:45.420 に答える