0

次のコードがあります。URL が google.com の場合、WebRequest から適切な応答が返されますが、REST API 要求の URL を指定すると、応答が null を返します。

ブラウザで同じ URL を使用すると、正しい応答が返されます。ps ######### で隠したコードは、実際には公開したくない API の鍵です。

//HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://www.google.com");
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://#########:@se.api.anpdm.com/v1/mailinglists/1/10");
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
Stream S_DataStream;
StreamReader SR_DataStream;
string s_ResponseString = "nothing";
if (res != null)
       {
        //Translate data from the Web-Response to a string
        S_DataStream = res.GetResponseStream();
        SR_DataStream = new StreamReader(S_DataStream, Encoding.UTF8);
        s_ResponseString = SR_DataStream.ReadToEnd();
        S_DataStream.Close();
       }
Console.WriteLine(s_ResponseString);
4

1 に答える 1

0

わかった。そのような認証キー (###) を URL に入れるべきではありませんでした。ユーザー名としてキーを使用し、空のパスワードを使用して、このような資格情報を使用する必要がありました。

req.Credentials = new NetworkCredential("#####################","");
于 2013-01-21T12:33:06.423 に答える