2013-08-27 1 views
2

Я пытаюсь напечататьAmber Smalltalk и XMLHttpRequest (ГЭТ)

| req | 
req := XMLHttpRequest new. 
req open: 'GET' url: 'http://www.stackoverflow.com/' asynchronous: false. 
req send: ''. 
req responseText 

отладчик говорит мне

[Exception... "Failure" nsresult: "0x80004005 (NS_ERROR_FAILURE)" location: 
"JS frame :: http://amber-lang.net/amber/js/boot.js :: callJavaScriptMethod :: 
line 651" data: no] 

Это происходит в рабочей области на текущий IDE янтарного на http://amber-lang.net/

Примечания :

У меня есть t ranslated сообщение JavaScript

req.open("GET", url, false); 

согласно сообщению правила преобразования отмечается в http://amber-lang.net/documentation.html#JSObjectProxy

Update после ответа по SLaks

Следующий фрагмент кода

| req | 
req := XMLHttpRequest new. 
req open: 'GET' url: 'http://amber-lang.net/' asynchronous: false. 
req send: ''. 
req responseText 

действительно работает при выполнении он в IDE открыт с http://amber-lang.net.

Ответ

'<!DOCTYPE html> 
<html> 
    <head> 
    <title>Amber Smalltalk</title> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
    <meta name="author" content="Nicolas Petton" /> 

.... 

ответ

2

По соображениям безопасности, вы не можете использовать AJAX для чтения из другого домена.
(за исключением случаев, когда это явно разрешено)

Это называется Same-origin policy.

 Смежные вопросы

  • Нет связанных вопросов^_^