2012-09-29 87 views
1

使用D2L REST API發送以下塊現有的論壇內創建話題:D2L如何使用Rest API創建論壇主題?

網址:POST /d2l/api/le/(D2LVERSION: version)/(D2LID: orgUnitId)/discussions/forums/(D2LID: forumId)/topics/

{ 
    "Name" : "Test Forum API", 
    "Description" : { 
     "Text" : "", 
     "Html" : "Test" 
    }, 
    "AllowAnonymousPosts" : true, 
    "StartDate" : null, 
    "EndDate" : null, 
    "IsHidden" : false, 
    "UnlockStartDate" : null, 
    "UnlockEndDate" : null, 
    "RequiresApproval" : false, 
    "ScoreOutOf" : null, 
    "IsAutoScore" : true, 
    "IncludeNonScoredValues" : true, 
    "ScoringType" : null, 
    "IsLocked" : false, 
    "MustPostToParticipate" : true 
} 

四處錯誤: 信息:重定向請求但followRedirects被禁用 狀態代碼302的對象移到/ d21/error/404

回答

0

郵政和重定向不能一起工作。環境(負載均衡器或其他網絡組件)通常會自動將所有http操作重定向到https。然後,您的客戶端庫不會實際遵循302.

您可能想要使用https(如果已啓用),並且可以使D2L庫生成https url。

(你也可以把要使用的後續客戶端的HTTP庫重定向,但因爲存在該GET操作可能會被重定向情景)

0

注意,CreateTopicData結構,你必須通過API來創建不是對輸入的Description屬性使用RichText組合結構。然而

{ 
    "Name" : "Test Forum API", 
    "Description" : { 
     "Content" : "Test", 
     "Type": "HTML" 
    }, 
    ... 
} 

的API會傳回一個RichText結構上輸出,:相反,你必須使用一個RichTextInput複合結構,這是稍有不同。

使用我們的測試服務,以POST到這樣一個URL(假設8083的組織ID,和4174的論壇ID)

https://myLMShost.edu/d2l/api/le/1.0/8083/discussions/forums/4174/topics/ 

我們的JSON結構看起來像這樣通過:

{'AllowAnonymousPosts': True, 
'Description': {'Content': 'test', 'Type': 'HTML'}, 
'EndDate': None, 
'IncludeNonScoredValues': False, 
'IsAutoScore': True, 
'IsHidden': False, 
'IsLocked': False, 
'MustPostToParticipate': True, 
'Name': 'Test Forum API', 
'RequiresApproval': False, 
'ScoreOutOf': None, 
'ScoringType': None, 
'StartDate': None, 
'UnlockEndDate': None, 
'UnlockStartDate': None} 

而我們測試的服務返回的新話題後,像這樣:

{'AllowAnonymousPosts': True, 
'Description': {'Html': 'test', 'Text': ''}, 
'EndDate': None, 
'ForumId': 4174, 
'IncludeNonScoredValues': False, 
'IsAutoScore': True, 
'IsHidden': False, 
'IsLocked': False, 
'MustPostToParticipate': True, 
'Name': 'Test Forum API', 
'PinnedPostCount': 0, 
'RatingsCount': 0, 
'RatingsSum': 0, 
'RequiresApproval': False, 
'ScoreOutOf': None, 
'ScoredCount': 0, 
'ScoringType': None, 
'StartDate': None, 
'TopicId': 88569, 
'UnapprovedPostCount': 0, 
'UnlockEndDate': None, 
'UnlockStartDate': None}