Я пытаюсь получить некоторые данные JSON из файла PHP.
но программа получает данные в (response2) в виде содержимого HTML, а не в формате json
Uri geturi2 = new Uri(JSON_GetHASSCENE_URL + "&FilmID=" + film.id);
using (HttpClient client2 = new HttpClient())
{
//MultipartFormDataContent content = new MultipartFormDataContent();
HttpResponseMessage responseGet2 = await client2.GetAsync(geturi2);
string response2 = await responseGet2.Content.ReadAsStringAsync();
JObject token2 = JObject.Parse(response2);
List<HasScene> result = JsonConvert.DeserializeObject<List<HasScene>>(response2);
}
Проблема, вероятно, из файла php. Итак, я добавил заголовок, но проблема не решилась.
это файл php
<?php
header('Content-Type: application/json');
//set vars
$filmID = (int)$_GET['FilmID'];
try {
$conn = new PDO('mysql:host=localhost;dbname=********','*****','*********');
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
//Create SELECT query
$qry = $conn->prepare("SELECT * FROM Film WHERE FilmID=? ");
$qry->bindParam(1, $filmID);
//Check whether the query was successful or not
if($qry->execute()){
$count = $qry->rowCount();
}
$json_data=array();//create the array
if($count >0) {
foreach($qry as $rec)//foreach loop
{
// all table's columns must be implemented here
//$json_array['id']=$rec['id'];
$json_array['FilmID']=$rec['FilmID'];
$json_array['IsHasScene']=$rec['HasScene'];
//here pushing the values in to an array
array_push($json_data,$json_array);
}
}
echo json_encode($json_data);
?>
Результат переменной (response2) выглядит следующим образом
<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Strict//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\">\n<head profile=\"http://gmpg.org/xfn/11\">\n <meta http-equi..."
Любая помощь с этим?
Спасибо
Я только что нашел проблему, это было в ссылке
я только заменил&»с»? «, и это хорошо работает
Других решений пока нет …