php - 我需要调用一个在 Windows 中工作但在 Linux 中不起作用的 API,我收到 401 错误

标签 php linux apache rest soap

以下代码在我的 Windows 计算机上运行,​​但相同的代码在我的服务器上不起作用。我的服务器平台是Linux。

我得到的错误是:

Status Code: 401 Result: HTTP/1.1 401 Unauthorized

我的代码:

    <?php
    try {
    $username = 'mXXXX';
    $password = 'SyXXX';
    $URL = 'http://svt-srv-nav.synovergetech.com:7047/DynamicsNAV90/WS/SMCSPL/Page/Customer';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $URL);
    curl_setopt($ch, CURLOPT_TIMEOUT, 30); //timeout after 30 seconds
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
    curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
    $result = curl_exec($ch);

    $status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);   //get status code
    curl_close($ch);
    //var_dump($result);
    $obj = simplexml_load_string($result);
    echo "<pre>";
    print_r($obj);
    echo "</pre>";
    }catch (Exception $e) {
        echo $e->getMessage();
    }

最佳答案

授权linux服务器中启用尝试添加正确的用户名和密码

$ch = curl_init();
curl_setopt($ch, CURLOPT_USERPWD, "myusername:mypassword");

关于php - 我需要调用一个在 Windows 中工作但在 Linux 中不起作用的 API,我收到 401 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59369889/

相关文章:

php - 在 PHP AWS 中管理 session

apache - .htaccess 和 seo 友好的 url

php - Laravel 4.2 连接表和分页

php - 仅回显插入 MYSQL 数据库的最后 4 件事

使用外部库引用编译 C 代码

java - 有没有办法从命令行指定 Ant 使用哪个 JVM?

python - 如何在关机后 5 分钟重新启动树莓派?

python - 在 Ubuntu 远程服务器上安装 Django 项目

apache - at 命令在 ubuntu apache 错误 'You do not have permission to use at'

php - 如何重新初始化 Zend_Form_Element_Hash?