2016-06-22 4 views
0

Я пытаюсь прочитать значения JSON в приложении для Android и для этого создал файл json_get_data.php, содержащий следующий код. Я использую сервер WAMP для размещения моих файлов.Не удалось проверить результат JSON

<?php 
$link = mysqli_connect('localhost', 'root', '', 'lunch_menu') or die("could not connect"); 
$query="select * from lunch_menu"; 
$result=mysqli_query($link,$query); 

$response = array(); 

while($row = mysqli_fetch_array($result)){ 
    array_push($response,array("id"=>$row[0],"day"=>$row[1],"soup"=>$row[2],"non_veg_main"=>$row[3],"non_veg_side"=>$row[4],"veg_main"=>$row[5],"veg_side"=>$row[6])); 
} 

echo json_encode(array("server_response"=>$response)); 

mysqli_close($link); 
?> 

URL-адрес для результата http://192.168.1.100/json_get_data.php

Однако, когда я пытаюсь проверить его с помощью JSONlint или других инструментов валидатора, он говорит мне, что URL является недействительным, даже если загрузка URL в браузере выводит JSON правильно.

+0

Проверьте API с помощью инструмента POSTMAN. Он покажет вам правильный результат вашего api. И если есть какие-то проблемы, это также покажет вам. – Avishake

+0

Я не уверен. Я не получаю никакого ответа от вашего URL-адреса. – SripadRaj

+0

Попробуйте сейчас, мой Wi-Fi перестает работать. Я изменил его на свой новый адрес ip. – asehgal17

ответ

0

Локальный хост обозначает устройство, на котором работает код, в данном случае эмулятор.

Если вы хотите обратиться к компьютеру, на котором запущен симулятор Android, используйте вместо него IP-адрес 10.0.2.2.

+0

На данный момент на андроиде нет ничего работающего (я должен удалить часть Android), но я просто пытаюсь проверить ответ от php-файла. – asehgal17

0

Я не вижу здесь заголовков с типом контента, перед эхом вы должны добавить что-то вроде: header ('Content-Type: application/json; charset = utf8');

Также, поскольку ваш ip является локальным, JSONLint не увидит его. Если вы знаете, что такое бродяга, вы можете использовать бродячую акцию или загрузить этот файл в реальный веб-сервер (для этого вы можете получить бесплатный уровень amazon).

Но если ваша цель просто проверить ваш выход, вы можете использовать расширение почтового переводчика или инструменты вроде этого.

Смежные вопросы