私は、Get、Posts(PostとGetのHttpリクエスト)とoAuth(トークンロジックを使用した認証メソッド)を実装するC#でClass Library
を書き始めました。HttpWebRequestクラスを拡張するライブラリの最適なアプローチは何ですか?
現在、すべての私と私の同僚は、取得と投稿の実行を担当する独自の "HttpMethods"クラスを持っています。
public string Get(string url, string refererPage = "")
{
string response = null;
try
{
// Web request
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Timeout = m_timeout;
request.Method = "GET";
request.Referer = refererPage;
request.CookieContainer = m_CookieJar;
request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
request.ServicePoint.ConnectionLimit = Consts.CONNECTIONS_LIMIT;
request.UserAgent = Consts.URI_USER_AGENT;
request.AllowAutoRedirect = true;
request.Host = Consts.API_HOST;
// Web response
using (HttpWebResponse resp = (HttpWebResponse)request.GetResponse())
response = new StreamReader(resp.GetResponseStream()).ReadToEnd();
}
catch (Exception ex)
{
LogWriter.Error(ex);
}
return response;
}
私の質問は:私たちはaddoptするための最善のアプローチされる?ここ
は、我々が持っていることを取得する簡単な例でありますか 私達はちょうどこのような何かに終わる、HttpWebRequest object
を使用する私たち自身のlibを持つようにしたい:ポストする方法について
MyOwnDll.MyOwnClassResponsibleForWebRequests.Get (Parameters)
同じ。
どうすればよいですか?私はあなたがFactory Patternに従うべきだと思う事前
あなたが何を求めているのかわからない、あなたは何をする必要があるかを知っているようです。あなたは図書館の作成やgetの実装の作成を手助けする必要がありますか?とにかく、私がこれをしたときにソケットを使用したので、もう少しコントロールができました。あなたが努力するつもりなら、ソケットを伸ばすことをお勧めします。しかし、.net 3.5以上を使用している場合は、あなたがしようとしているものの方が簡単かもしれない拡張メソッドを使うことができます。 – bebonham
私は.NETを使用しません。これは、デスクトップのC#アプリケーションで使用されます。私はどのように私は "Get"メソッドを構築する必要があるかを理解するための助けが必要です。 –
あなたはどんなアドバイスを探していますか?あなたがしているのは、既存のカスタムラッパークラスを作成することだけです。あなたがそれを必要とする方法を実装するのはそれ以上のことではありません。 – cdeszaq