自动导入过程的一个重要部分是在处理您的导入之前知道您先前的导入状态。
如果您决定运行标准导入,您必须在处理下一个导入之前修复先前的导入,因为资料可能会从失败/未完成的导入中失去。 如果您使用全批量导入,状态还是重要的因为您不想开始下一个全批量直到先前的批量已完成。 取决于您的更新频率、导入的大小和其它因素,全批量导入可以容易地侵占您的时间窗口。
运行并更换以下命令:
- 更换<api_token>与先前创建的API令牌
- 更换<canvas_fqdn>与您的Canvas域名
- 更换 <import_id>与从您的测试文件导入的ID
curl -H "Authorization: Bearer <api_token>" 'https://<canvas_fqdn>/api/v1/accounts/self/sis_imports/<import_id>'
如果导入完成,命令应该会回到一个包含状态和结果的JSON对应。 以下是一个在上个步骤运行命令的结果:
{"created_at":"2014-02-27T13:03:39Z","ended_at":"2014-02-27T13:03:39Z","updated_at":"2014-02-27T13:03:39Z","progress":100,"id":6670997,"workflow_state":"imported","data":{"import_type":"instructure_csv","supplied_batches":["course"],"counts":{"accounts":0,"terms":0,"abstract_courses":0,"courses":1,"sections":0,"xlists":0,"users":0,"enrollments":0,"groups":0,"group_memberships":0,"grade_publishing_results":0}}}
这是几个重点考虑有关JSON的结果:
进度(progress):在一个运行工作钟,”进度“参数表示工作完成的百分率。 当工作完成时,进度将是百分百。
workflow_state:”workflow_state“参数表示正运行工作的目前状态。 在大部分案例,成功完成的工作将使用”imported“状态表示。 如果您看见其它状态,而不是”imported“或”importing“,您需要在继续之前必须暂停并找出故障的原因。
- 如果状态是”importing“,再尝试运行命令直到回报”imported“状态。
- 如果状态是”imported_with_messages“或”failed_with_messages“,检查”processing_warnings“或”processing_error“的内容。