inohilog

/var/log/inohiro.log

はてなダイアリーのAtomPubで日記一覧をGETしたい

別になんてことなくて、POSTよりも簡単なんです。
で、ですね、はてなのAtomPubにおけるすべての通信にX-WSSEヘッダが必要なのですが、はてなダイアリーのAtomPubだと他人(権限のない人)の日記一覧のGETが出来ないんです。
これはどうなんでしょうか。権限が無い日記に対してPOSTとかPUTとかDELETEできちゃうのはまずいと思うんですが、日記一覧の取得は出来て問題ないと思うんですが。これは間違った考え方でしょうか。だれか教えて。


それからエラーで返ってくるHttp Status Codeが「500(Internal Server Error)」なんですが、これもどうなの。「403(Forbidden)」を返すのが正しいのではないかと思うのですが。それとも本当にエラーが起きているんだろうか。


今書いているコード自体は、「自分(権限のある)の記事一覧」が取って来れれば何も問題ないのですが、ちょっと気になったので。

一応コード

本当に(?)とってくるメソッドだけ。

private void get( string query, string header )
{
	HttpWebRequest request = ( HttpWebRequest )WebRequest.Create( query );
	request.Method = "GET";
	request.Headers.Add( "X-WSSE", header );
	request.ContentType = "application/x.atom+xml";

	HttpWebResponse response;

	try
	{
		response = ( HttpWebResponse )request.GetResponse();
	}
	catch( WebException webExp )
	{
		throw webExp;
	}

	if( response != null )
	{
		Stream responstream = response.GetResponseStream();
		StreamReader stmReader = new StreamReader( responstream );
		string result = stmReader.ReadToEnd();
		this.analyseResponse( responstream );
	}
}