4

C# で GitHub API v3 を使用しています。アクセストークンを取得でき、それを使用してユーザー情報とレポ情報を取得できます。

しかし、新しいリポジトリを作成しようとすると、Unauthorized というエラーが表示されます。

以下に示すように、HttpWebRequest を使用してデータを投稿しています。C# のサンプルまたはサンプル コードを提案してください。

(..)string[] paramName, string[] paramVal, string json, string accessToken)
{
    HttpWebRequest req = WebRequest.Create(new Uri(url)) as HttpWebRequest;
    req.Method = "POST";
    req.ContentType = "application/json";

    StreamWriter writer = new StreamWriter(req.GetRequestStream());
    writer.Write(json);
    writer.Close();

    string result = null;
    using (HttpWebResponse resp = req.GetResponse() as HttpWebResponse)
    {
        StreamReader reader =
            new StreamReader(resp.GetResponseStream());
        result = reader.ReadToEnd();
    }(..)

注: どこに accesstoken を追加する必要があるのか​​ わかりません。URLだけでなくヘッダーでも試しましたが、どれも機能しません。

4

4 に答える 4

3

C# Github API サンプル コードを使用していますか? そのコードを見て、必要なことが行われるかどうかを確認します。

于 2012-07-13T18:57:50.580 に答える
3

リクエストヘッダーに auth を追加するだけで、基本認証を非常に簡単に使用できます。

request.Headers.Add("Authorization","Basic " + Convert.ToBase64String(new ASCIIEncoding().GetBytes(username +":"+password)));

申し訳ありませんが、アクセス トークンはまだ使用していません。

于 2013-02-16T09:14:22.117 に答える
0

試す

rec.Credentials = CredentialCache.DefaultCredentials;

または、デフォルト以外の資格情報を使用します。

http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.credentials.aspx

于 2012-07-14T16:39:38.563 に答える