gpt4 book ai didi

PHP:来自远程服务器的 Http 请求失败

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:36:36 25 4
gpt4 key购买 nike

我有一些调用网络服务的 PHP 代码。它在我的本地机器上运行时完美运行,但是当我尝试在远程服务器(它最终驻留的地方)上运行它时,我收到以下错误:

Warning: simplexml_load_file(http://XXXXXXXXX:8080/symws/rest/standard/searchCatalog?clientID=StorageClient&term1=ocm00576702): failed to open stream: HTTP request failed! HTTP/1.1 400 Bad Request
in /var/www/ShoppingCart/storage_request_button.php on line 42

我的本​​地机器运行的是 OSX;服务器正在运行 debian linux。

知道是什么导致了这种不同的行为吗?我需要在服务器上安装另一个软件包吗?

更新:

虽然将 URL 放入浏览器工作正常,但当我尝试从 linux 服务器获取 URL 时,出现 400 错误。正在访问的服务器 URL 也是 debian linux。服务器上没有防火墙。我从来不需要配置该服务器以允许从其他任何地方访问它。

最佳答案

您可以尝试将错误抑制为 this question提到摆脱 status = 400。也许使用 simplexml_load_file('url', null, LIBXML_NOERROR);

如果仍然无法正常工作,则可能有很多地方出错了。 simplexml_load_file 没有太多可供调试的选项。您可以尝试使用 curl

<?php
// make request
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://XXXXXXXXX:8080/symws/rest/standard/searchCatalog?clientID=StorageClient&term1=ocm00576702");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);

// handle error; error output
if(curl_getinfo($ch, CURLINFO_HTTP_CODE) !== 200) {
var_dump($output);
} else {

//load xml
$xml= simplexml_load_string($output);
}
curl_close($ch);

if (empty($xml)) {
echo 'Something went wrong';
exit;
}
?>

更新:

请试一试,看看你是否能得到一些信息:

<?php
$content = file_get_contents('http://XXXXXXXXX:8080/symws/rest/standard/searchCatalog?clientID=StorageClient&term1=ocm00576702');
var_dump($http_response_header);
?>

关于PHP:来自远程服务器的 Http 请求失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17046889/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com