javascript - Amazon Mechanical Turk“自定义”通过网络界面提交
问题描述
有什么方法可以通过不是他们提供的“提交”按钮的按钮触发 Mechanical Turk 上的提交表单?(我要求它提交一个空表格以加快工人的时间)
我试过这个:
$('#mturk_form').submit();
但是“提交此 HIT 时出现问题”警告/错误返回。
解决方案
是的,你可以做任何你想做的事情,让 POST 发送到提交端点(例如https://www.mturk.com/mturk/externalSubmit
)。添加assignmentId
参数是必需的,但除此之外,它是一个标准的表单提交。
诀窍是您需要assignmentId
在提交时传递一个参数。此字段的值在页面加载时在查询字符串参数中设置。(assignment id 让 MTurk 知道哪个工作人员做了哪一项工作,因此每次工作人员查看您的一个 HIT 时都会有所不同。)同样,表单操作 URL 在沙箱和产品之间发生变化,因此最佳实践是从查询中读取字符串参数turkSubmitTo
并 POST 回该位置。
如果您对 JavaScript 感到满意,请阅读“帮助程序”脚本以了解它在做什么:https ://s3.amazonaws.com/mturk-public/externalHIT_v1.js
另外,请参阅此答案以获取类似问题:如何定义 Mechanical Turk 上的“提交”按钮返回的内容?
推荐阅读
- c# - 使用 GridSplitter 调整网格大小
- oauth-2.0 - Alexa:我们此时无法链接
- typescript - 根据下拉选择值显示过滤器
- sql - 仅更改 sql 记录的日期部分
- html - 如何在css中选择tspecific类的最后一个孩子
- java - 从 Struts JSP 中的会话中获取 Map 值
- java - 如何参考尚未持久化子对象的子对象(Objectify)首先保存父实体?
- node.js - 天蓝色 DevOps 管道打开的文件太多
- java - 我必须启动 startSmsRetriever 多少次才能使用 SMS Retriever API 多次检索 SMS?
- c# - 如何在运行时读取 csproj xml 元素?