【发布时间】:2016-08-19 06:38:31
【问题描述】:
我正在向 URL 发送数据,它给了我这个错误
失败了! HTTP/1.1 505 HTTP 版本不支持
我的代码:
<?php
$pickup_time= '2016-8-20 11:11';
$city = 'Islamabad';
$pickup_address= 'aaa';
$dropoff_address = 'bbb';
$pickup_area= 'Street 1, F-8, Islamabad, Islamabad Capital Territory, Pakistan';
$drop_area= 'Karachi, Sindh, Pakistan';
$multi_areas = 'Lake View Park, Islamabad, Islamabad Capital Territory, Pakistan';
$description = 'nill';
$booking_fare = '30590';
$deadmile_distance = 'nill';
$actual_distance = '1519';
$payment_method = '1';
$pickup_area = preg_replace('/[.,]/', '', $pickup_area);// remove commas from string
$drop_area = preg_replace('/[.,]/', '', $drop_area);// remove commas from string
$multi_areas = preg_replace('/[.,]/', '', $multi_areas);// remove commas from string
$jsonData = file_get_contents("https://daewoocab-test.herokuapp.com/api/v1/customer/923331524145/booking/new?token=6ab676ddd7bf00101408ea3a27fdbb8ad22e9dcdf2faafdcd2ef0efc1509d463&booking[pickup_time]=$pickup_time&booking[city]=$city&booking[pickup_address]=$pickup_address&booking[drop_address]=$dropoff_address&booking[pickup_area]=$pickup_area&booking[drop_area]=$drop_area&booking[multi_areas]=($multi_areas)&booking[description]=$description&booking[booking_fare]=$booking_fare&booking[deadmile_distance]=$deadmile_distance&booking[actual_distance]=$actual_distance&booking[payment_method]=$payment_method");
$json = json_decode($jsonData,true);
echo $json['bookings']['id'];
?>
但搜索后,我使用 urlencode 和字符串来删除空格,现在我的代码是:
$jsonData = file_get_contents("https://daewoocab-test.herokuapp.com/api/v1/customer/923331524145/booking/new?token=6ab676ddd7bf00101408ea3a27fdbb8ad22e9dcdf2faafdcd2ef0efc1509d463&booking[pickup_time]=" . urlencode($pickup_time)"&booking[city]=$city&booking[pickup_address]=$pickup_address&booking[drop_address]=$dropoff_address&booking[pickup_area]=". urlencode($pickup_area)"&booking[drop_area]=". urlencode($drop_area)"&booking[multi_areas]=(" . urlencode($multi_areas)")&booking[description]=$description&booking[booking_fare]=$booking_fare&booking[deadmile_distance]=$deadmile_distance&booking[actual_distance]=$actual_distance&booking[payment_method]=$payment_method
它仍然给我语法错误,我已经检查了 100 次,但没有发现任何语法错误。我在这里做错了吗?
【问题讨论】:
-
当你把网址放在
file_get_contents()方法中时,在浏览器中?你得到回应了吗?只需尝试在地址栏中敲击该 url 以确认其是否为 URL 生成或编码方面的语法错误