У меня есть данные JSON:
$.ajax({ type: "GET", url: "http://www.example.com/test.php", data:"code=Sh9QA&token=0982ff3066a3c60dbd3ecf9bcafc801b", contentType: "application/json; charset=utf-8", });
Чтобы отправить эти данные по http://www.example.com/test.php
, я попытался с этим кодом:
<?php //API URL $url = 'http://www.example.com/test.php'; //Initiate cURL. $ch = curl_init($url); //The JSON data. $jsonData = array( 'data' => 'code=Sh9QA&token=0982ff3066a3c60dbd3ecf9bcafc801b' ); //Encode the array into JSON. $jsonDataEncoded = json_encode($jsonData); //Tell cURL that we want to send a POST request. curl_setopt($ch, CURLOPT_POST, 1); //Attach our encoded JSON string to the POST fields. curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonDataEncoded); //Set the content type to application/json curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); //Execute the request $result = curl_exec($ch); ?>
Но он всегда перенастраивает No access
.
Что не так в моем коде? Можете ли вы помочь мне исправить это?
Извините за мой английский, это не хорошо. Если мой мой вопрос не ясен, прокомментируйте ниже этот вопрос.
Первая проверка http://www.example.com/test.php
Система Ajax не может использоваться с полным доменным именем.
поэтому вы должны использовать /test.php
Затем проверьте наличие ошибки на вашем сайте или целевом сайте.
Затем код становится:
$.ajax({ type: "GET", url: "/test.php", data:"code=Sh9QA&token=0982ff3066a3c60dbd3ecf9bcafc801b", contentType: "application/json; charset=utf-8", success: function(data, textStatus) { alert(data); data = $.parseJSON(data); }, error : function(data, textStatus, error){ alert(data + " : "+ textStatus); } });
Без документации, чтобы посмотреть, единственное, что я могу предложить, это удалить данные из массива и просто сделать его ключевым code
.
<?php //API URL $url = 'http://www.example.com/test.php'; $data = "?code=Sh9QA&token=0982ff3066a3c60dbd3ecf9bcafc801b" //Initiate cURL. $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url . $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //Execute the request $result = curl_exec($ch); ?>