首页 > 解决方案 > Perl-Rest::Client 和凭据

问题描述

有一个应用程序,其中凭据在 curl 上无法使用 -u 选项,我必须使用 -d 选项传递它们,如下所示:

curl -v -k -X 'POST' --header 'Content-Type: application/json' --header 'Accept: application/json' -d '{ "auth_info":{ "username":"myuser", "password":"mypwd" } }' 'https://.../rest/v1.0/auth'

使用 Perl 中的 rest::client,我可以使用会话标头发送凭据,但它仅在应用程序接受 curl 的 -u 参数时才有效。

因此,我正在尝试使用解决方案来识别自己与该应用程序的其余部分::client

试过:

    %CONTENT_JSON = ( 
        'auth_info' => (
        'username' => 'myuser',
         'password' => 'mypwd')
    );
    $CONTENT_JSON = encode_json(\%CONTENT_JSON);

但是我在返回查询时收到以下错误消息:

$VAR1 = {
          'service_status' => {
                                'details' => 'JSON request struct field is empty or invalid.',
                                'code' => 5437
                              }
        };

任何帮助表示赞赏...

标签: restperlcredentials

解决方案


推荐阅读