php - HTTP/1.1 400 file_get_contents 中的错误请求

标签 php http file-get-contents

我这里有一个链接http://www.example.com/Movies.aspx?movname=Raja Natwarlal

这是我的代码

file_get_contents($link, false, $context);

它给了我这个错误

failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request

我也尝试过这段代码

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $Url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); //get the code of request
curl_close($ch);

它给了我 $httpCode=400

最佳答案

您发布的 URL 在技术上无效。如果您输入这样的 URL,浏览器会处理这一点,但在更技术的层面上,您必须自己处理这些详细信息。

在这种情况下,urls 请求参数内有一个空白。这样的字符在 URL 中无效。因此你必须逃避它。尝试一下这些变体:

请注意,您不能简单地使用像 urlencode() 这样的函数来处理整个 URL。这也可以避免诸如斜线之类的东西。该函数旨在转义字符串,以便可以将其用作 URL 内的单个标记。

关于php - HTTP/1.1 400 file_get_contents 中的错误请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25591362/

相关文章:

PHP range & foreach,使用当前值? (WordPress)

javascript - <select> 标签未发布到 MySql 数据库

php - 如何在 PHP 中发出异步 GET 请求?

PHP file_get_contents() SSL 操作失败,代码为 1

php - 通知 : iconv(): Detected an incomplete multibyte character in input string in Excel_reader. php

PHP 拒绝从 var_dump、print 等输出数据

PHP - HTTP header 中的文件名 : Problem with whitespaces

java - 为下载管理器添加 HTTPS 支持

php - 带有查询字符串的 file_get_contents

PHP 无法从 URL 获取文本(file_get_content,CURL 不起作用)