0

API を使用してコースを作成しようとしていますが、送信内容をどのように微調整しても、同じ 404 エラーが返されます。テストインスタンスの /d2l/api/lp/1.4/courses/ に以下を投稿しています。

{
   "Name":"STLR Course-112",
   "Code":"STLR.112.201420",
   "Path":"",
   "CourseTemplateId":22462,
   "SemesterId":22460,
   "StartDate":"2014-05-07T12:00:00.000Z",
   "EndDate":"2014-05-07T13:00:00.000Z",
   "LocaleId":null,
   "ForceLocale":false,
   "ShowAddressBook":false
}
4

1 に答える 1

0

ここでテスト インスタンスを使用して、この API がここで提供されたブロックとほぼ同じデータで動作することを確認できます。次のような本文を POST します (わかりやすくするために空白を追加しています):

{"CourseTemplateId": 8082, 
 "LocaleId": null, 
 "Code": "STLR.112.201420", 
 "Name": "STLR Course-112", 
 "Path": "", 
 "ShowAddressBook": false, 
 "EndDate": "2014-05-07T13:00:00.000Z", 
 "StartDate": "2014-05-07T12:00:00.000Z", 
 "ForceLocale": false, 
 "SemesterId": 6984}

次のような応答で 200 を取得します (わかりやすくするために空白を追加しています)。

{"Identifier":"114119",
 "Name":"STLR Course-112",
 "Code":"STLR.112.201420",
 "IsActive":true,
 "Path":"/content/enforced/114119-STLR.112.201420/",
 "StartDate":"2014-05-07T12:00:00.000Z",
 "EndDate":"2014-05-07T13:00:00.000Z",
 "CourseTemplate":{"Identifier":"8082",
                   "Name":"ExtensibilityTemplate",
                   "Code":"EXT-TMPL"},
 "Semester":{"Identifier":"6984",
             "Name":"Fall 2011",
             "Code":"FA2011"},
 "Department":{"Identifier":"8081",
               "Name":"Extensibility",
               "Code":"EXT"}
}

私の入力ブロックとあなたの入力ブロックの唯一の違いは、コース テンプレートと学期に提供された ID であるように思われます。そのため、新しいコースを、あなたの組織の ID ではなく、ローカル テスト インスタンスにフックできます。それ以外の場合、入力プロパティは同一であるように見えます。

あなたが見ることができるいくつかのこと:

  • コース テンプレートと学期に正しい Org Unit Id 値を使用していることを確認してください

  • 新しい組織単位のコンテンツ パスを強制するように LMS が構成されていることを確認します。これにより、コース オファリングを作成するときに LMS がパスを自動作成するようになります。コンテンツ パスの強制がオンになっていない場合は、代わりに作成時にコース オファリングの有効なコンテンツ パスを指定する必要があり、空の文字列を渡すことはおそらく有効なパスではないため、 API サービス ハンドラが指定した「コンテンツ パスが見つからない」ため、404 が返されます。

404 で戻ってくる特定のメッセージはありますか?

于 2014-05-09T15:48:52.540 に答える