「認証情報をヘッダに挿入したGETリクエストを送信
表題のとおり「GETリクエストのヘッダにX-WSSE認証を追加して送出する」方法がわからず困っています。
なぜそれをやりたいかと申しますと
ライブドアブログに投稿するのに、XML::Atomを使った方法はわかったのですが、
XML::Atomを使わないでやるにはどうしたらいいのかとおもい試しています。
http://www.witha.jp/Atom/Chapter-3_The_Atom_Publishing_Protocol_or_AtomAPI.html#Atom3-4-3
によりますと、
----
エンドポイントのhttp://cms.blog.livedoor.com/atomに認証情報をヘッダに挿入したGETリクエストを送信します.
生のHTTP通信は以下のようになります.
リクエスト:
GET http://cms.blog.livedoor.com/atom HTTP/1.1
X-WSSE: UsernameToken Username="***", PasswordDigest="eNSBiuFfcLpau1RfWc3lOWufje0=", Nonce="ZGFrZHZueGJ6aGh1", Created="2004-10-31T14:08:34Z"
---
と、あっさり書いてあるのですが、
◆「認証情報をヘッダに挿入したGETリクエストを送信」◆はどうやれば良いのやら・・・
強引にこうかいてみたのですが・・
--------
use LWP::UserAgent;
$request = HTTP::Request->new(GET => 'http://cms.blog.livedoor.com/atom', ['X-WSSE'=>'User nameToken Username="*****", PasswordDigest="KxZ4DElJVqsIBXiF9ZIWCp59ghM", Nonce="YWFh", Created="2004-01-20T01:09:39Z"']);
$ua = LWP::UserAgent->new;
$response = $ua->request($request);
print $response->content;
----------
以下のように成ってしまいました。
----------------
<?xml version="1.0" encoding="utf-8"?>
<error>Invalid login</error>
----------------
どうかよろしくおねがいします。
お礼
jjon-com様 早速のご回答、ありがとうございました。お蔭様で、理解できました。回答文の説明の方法も、見事でした。