2010-05-08 12 views
5

No puedo obtener un objeto XMLHttpRequest para que funcione correctamente en un widget de Dashboard que estoy escribiendo. He aislado a un ejemplo trivial que no trabajan en el ámbito global del archivo main.js:Uso de widget XMLHttpRequest en Dashboard

xhr = new XMLHttpRequest; 
    xhr.open('GET', "http://google.com", false); 
    xhr.send(''); 

Cuando se ejecuta la última línea me sale el error "ABORT_ERR: XMLHttpRequest Excepción 102" (esto es, en el depurador Dashcode).

¿Alguien tiene alguna idea de lo que podría estar mal aquí?

Respuesta

9

Es necesario seleccionar "Permitir acceso de red" en el "Widget Atributos "panel.

+0

Asumo que esto se refiriendo a Dashcode, etc.? en lugar de modificar manualmente/crear widget a mano en el código fuente, que sería modificar el archivo Plist como en otras respuestas aquí. – David

6

bien, lo he encontrado (tres horas): es necesario agregar la siguiente clave en el fichero de Info.plist:

<key>AllowNetworkAccess</key> 
<true/> 
1

Tengo el mismo problema sin resolver incluso después de que AllowNetworkAccess se haya agregado a mi info.plist. Intenté cambiar esta clave a AllowFullAccess, pero no cambió nada. Después de reiniciar el sistema funcionó bien o_O

+0

Supongo que el widget necesitaba una recarga, pero ¿de qué otra manera recargarlo aparte del reinicio del sistema? De lo contrario, podría almacenarse en caché antes de reiniciar. – David

1

Los pasos a seguir son:

  1. Desde el menú, seleccione "Dashcode> Preferencias ..." y haga clic en la pestaña Destinos.
  2. Debajo de la columna de la izquierda, haga clic en el signo más para crear un nuevo destino.
  3. Para un sitio web externo, elija FTP en el menú desplegable Tipo. Complete el servidor, la ruta, el nombre de usuario y la contraseña. Cierre el panel de Preferencias.
  4. De vuelta en Dashcode, haga clic en el icono de Atributos de widgets en la columna de la izquierda.
  5. Marque las casillas de Permitir acceso a la red y Permitir acceso a archivos externos en la columna principal.

Usted debe ser capaz de ejecutar el widget sin el error 102 de excepción (si está conectado)