0

リクエストを送信しようとすると、「内部エラー」例外が発生するため、問題が特定のリクエストにあるのか、それともそれ以上の問題があるのか​​ を知りたい.

cUrl リクエストは次のようになります。

curl https://(canvas_api_url)?access_token=(アクセストークン)

-Xポスト

-F '登録[user_id]=241'

-F 'enrollment[type]=StudentEnrollment'

私のリクエストは次のようになります。

HttpWebRequest req = WebRequest.Create("https://<canvas_api_url>?access_token=<access-token>");

req.Method = "POST";
req.ContentType = " application/json; charset=utf-8";
req.UseDefaultCredentials = true;
req.PreAuthenticate = true;
req.Credentials = CredentialCache.DefaultCredential;

using (var streamWriter = new StreamWriter(req.GetRequestStream())
{
     string json = "{\"enrollment\" : 
     [\"user_id\" : \"241\", \"type\" : \"StudentEnrollment\"]}";
     streamWriter.Write(json);
}

HttpWebResponse response = req.GetResponse();

私のリクエストに何か問題がありますか?

4

1 に答える 1

0

この投稿はかなり古いようですが、簡単に見てからの考えを次に示します。何を達成しようとしているのかを言わないので、ここにはいくつかの潜在的な間違いがあります。

  1. 既存の登録を要求している場合は、POST ではなく GET を使用する必要があります。
  2. 新しい登録を作成しようとしている場合は、エンドポイントを適切に構成していません。コース (/api/v1/courses/:course_id/enrollments) を指定する必要があり、次に と を含めることができuser_idますtype

詳細は、 https ://canvas.instructure.com/doc/api/enrollments.html のドキュメントに記載されています。

于 2016-07-14T19:25:59.463 に答える