2014-05-12 27 views
0

我正在运行命令行工具安装程序附带的ExternalHit示例。对于文件。提问我有以下...Amazon Mechanical Turk - ExternalHit示例

<?xml version="1.0"?> 
<ExternalQuestionxmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2006-07-14/ExternalQuestion.xsd"> 
<ExternalURL>https://s3.amazonaws.com/MTurk_test/externalpage.htm?url=${helper.urlencode($urls)}</ExternalURL> 
<FrameHeight>450</FrameHeight> 

我们不停的输入文件一样的样本。当我们在沙箱或标准机械turk界面中加载时,输入变量(即网页)不显示在框架中。另外,您可以选择一个单选按钮,但不能提交答案。

回答

0

您正在运行到两个问题在这里:

  1. 由于same origin policy,在结果页面的不会显示任意URL。
  2. 即使它可以显示任意的URL,也必须为SSL配置该URL。

那么,你就可以加载这个(使用SSL另一个亚马逊网址):

https://s3.amazonaws.com/MTurk_test/externalpage.htm?url=https%3A%2F%2Fwww.mturk.com

但不是这个(亚马逊URL W/O SSL):

https://s3.amazonaws.com/MTurk_test/externalpage.htm?url=http%3A%2F%2Fwww.mturk.com

而不是一个任意的URL(即使有SSL):

https://s3.amazonaws.com/MTurk_test/externalpage.htm?url=https%3A%2F%2Fwww.google.com

所以,我的猜测是,这个模板是可怕的过时,过去的某个时间点工作,但不符合现代Web浏览器技术。

最佳解决方案就是为工作人员提供点击访问URL的链接。

+0

值得注意的是,这将适用于某些网站,但不适用于其他网站(尽管#1)。这是因为#1的限制可以由网站运营商进行配置,而有些则比其他人对IFRAME中可能出现的内容松懈。下面是一个刚开箱即用的例子,它不是一个亚马逊网址(不管你信不信,mturk.com和amazonaws.om在严格意义上并不是真正的'同源'):https:// s3.amazonaws.com/MTurk_test/externalpage.htm?url=https://www.bing.com/ – jrb

相关问题