[英]Perl: LWP::UserAgent Regarding rules for passing parameters
例如我有一個命令
curl -H "Content-Type: application/json" -H "Authorization: Bearer ACCESS_TOKEN" -X GET https://api.xxx/v1/datapackages/yyy
(1) 我很困惑何時在傳遞參數時使用 []。 下面哪一項是正確的,為什么?
沒有 [ ]
my $r2 = $ua -> get("https://api.xxx/v1/datapackages/yyy",
'Content-Type' => 'application/json',
Authorization => 'Bearer '.$token,
);
或 [ ]
my $r2 = $ua -> get("https://api.xxx/v1/datapackages/yyy",
[
'Content-Type' => 'application/json',
Authorization => 'Bearer '.$token,
]
);
(2) 我看到有時引用參數有時不引用。 是否應該引用“授權”並寫為
和 ' '
'Authorization' => 'Bearer '.$token,
或沒有 ' '
Authorization => 'Bearer '.$token,
非常感謝!
得到
my $res = $ua->get( $url ); my $res = $ua->get( $url , $field_name => $value, ... );
此方法將在給定的 URL 上發送 GET 請求。 可以提供更多參數來初始化請求的標頭。 它們作為單獨的名稱/值對給出。 返回值是一個響應對象。 有關它提供的接口的描述,請參閱HTTP::Response 。
所以,這只是談論將參數作為鍵/值對傳遞。 它沒有說明使用數組引用。 所以,如果我是你,我會堅持第一種方法。
“胖逗號”( =>
)記錄在perldoc perlop (因為它是一個運算符)中,它說:
=>
操作符(有時讀作“胖逗號”)是逗號的同義詞,除了它會導致左邊的單詞以字母或下划線開頭並且僅由字母、數字和下划線。 這包括可能被解釋為運算符、常量、單個數字 v 字符串或函數調用的操作數。 如果對此行為有疑問,可以明確引用左操作數。否則,根據上下文,
=>
運算符的行為與逗號運算符或列表參數分隔符完全相同。
基本上,如果它左邊的東西是一個單詞(我的意思是一系列字母數字字符和下划線),那么你可以省略它周圍的引號。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.