2014-01-28 3 views
0

им отправки данных JSON из PHP в Actionscript, но я получаю эту ошибкуAS3 чтения JSON из PHP

SyntaxError: Error #1132: Entrada de análisis JSON no válida. 
    at JSON$/parseCore() 
    at JSON$/parse() 
    at Code.GUI.Menu::Biblioteca/urlLoaderCompleteHandler() 
    at flash.events::EventDispatcher/dispatchEventFunction() 
    at flash.events::EventDispatcher/dispatchEvent() 
    at flash.net::URLLoader/onComplete() 

здесь его мой сценарий действия кода

package Code.GUI.Menu 
{ 
    import flash.display.*; 
    import flash.events.*; 
    import flash.net.*; 

    public class Biblioteca extends MovieClip 
    { 
     var urlLoader:URLLoader=new URLLoader(); 

     public function Biblioteca() :void 
     { 
      addEventListener(Event.ADDED_TO_STAGE,init); 
     } 

     public function init(event:Event){ 
      urlLoader.load(new URLRequest("test.php")); 
      urlLoader.addEventListener(Event.COMPLETE, urlLoaderCompleteHandler); 
     } 
     function urlLoaderCompleteHandler(e:Event):void { 
      trace(e.target.data) ; 
      var arrayReceived:Object = JSON.parse(e.target.data); 
     } 

    } 

} 

это test.php

<?php 
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); 
header('Content-Type: application/json'); 
echo json_encode($arr); 
?> 

это его waht вспышка cs6 консольное шоу

<?php 
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5); 
header('Content-Type: application/json'); 
echo json_encode($arr); 
?> 
SyntaxError: Error #1132: Entrada de análisis JSON no válida. 
    at JSON$/parseCore() 
    at JSON$/parse() 
    at Code.GUI.Menu::Biblioteca/urlLoaderCompleteHandler() 
    at flash.events::EventDispatcher/dispatchEventFunction() 
    at flash.events::EventDispatcher/dispatchEvent() 
    at flash.net::URLLoader/onComplete() 

, когда я проверить с Javascipt

$.getJSON('test.php',{format: "json"}, function(data) { 
console.log(data); 
}); 

это работает! но, похоже, у операций с действиями есть проблемы с выходом синтакса

Object {a: 1, b: 2, c: 3, d: 4, e: 5…} 
+0

исправлено! Мне нужно было добавить локальный URL-адрес хоста, чтобы php обрабатывал его 'urlLoader.load (новый URLRequest (« http: // localhost: 8888/test.php »));' –

+0

Пожалуйста, добавьте свой ответ в качестве правильного ответа и принимайте его, чтобы другие люди могли его найти :) – Jono

ответ

0

исправлено! Мне нужно было добавить локальный URL-адрес хоста, чтобы обработать его php urlLoader.load(new URLRequest("http://localhost:8888/test.php"));

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