0

リストの情報を JSONP 経由で取得していますが、コンソール ブラウザに次のエラーが表示されます:「予期しないトークン:」

私の店:

Ext.define ('Projeto.store.Mural', {
 extend 'Ext.data.Store'
 requires: [
     'Projeto.model.Mural'
 ]

 config: {
     autoLoad: true,
     model: 'Projeto.model.Mural'
     storeId 'MuralStore'
     Proxy {
         type: 'jsonp'
         url: 'http://URL/mural'
         reader: {
             type: 'json',
             rootProperty: 'rows'
         }
     }
 }
});

私のリスト:

Ext.define ('Projeto.view.MuralList', {
 extend 'Ext.dataview.List'
 alias: 'widget.murallist'

 config: {
     loadingText: 'Loading ...',
     store: 'MuralStore'
     itemTpl: [
         '<div> Message: {message} </ div>
     ]
 }
 });

JSON は私の URL を返します:

{
 "rows": [
     {
         "lookup": "yyyy"
         "dateTime", "10/10/1970"
         "id": "1",
         "message": "yyyy"
     }
     {
         "lookup": "dsdfasfsadf"
         "dateTime", "15/05/2012"
         "id": "2",
         "message": "dsdfasfsadf"
     }
 ]
 }

JSONは有効な形式であるため、エラーの理由を知っている人はいますか?

ありがとうございました。

4

4 に答える 4

0

真ん中にコンマがありません:

{
 "rows": [
     {
         "lookup": "yyyy"
         "dateTime", "10/10/1970"
         "id": "1",
         "message": "yyyy"
     },
     {
         "lookup": "dsdfasfsadf"
         "dateTime", "15/05/2012"
         "id": "2",
         "message": "dsdfasfsadf"
     }
 ]
}
于 2012-04-26T18:06:00.043 に答える
0

jsonだけでなくjsonpとしてリクエストしているため、json がコールバック関数で囲まれていることが期待されます。何かのようなもの:

callback({
 "rows": [
     {
         "lookup": "yyyy"
         "dateTime", "10/10/1970"
         "id": "1",
         "message": "yyyy"
     }
     {
         "lookup": "dsdfasfsadf"
         "dateTime", "15/05/2012"
         "id": "2",
         "message": "dsdfasfsadf"
     }
 ]
 })
于 2012-09-05T14:48:19.410 に答える
0

':'まず、あなたは多くの場所と','ステートメントの最後に欠けています。:プロパティ値の前,とステートメントの最後で使用することは常に良い習慣です。

このような、

 ...  
 ...  
 requires: [
     'Projeto.model.Mural'
 ],

 config: {
     autoLoad: true,
     model: 'Projeto.model.Mural',
     storeId: 'MuralStore',
     proxy : {
        type:'jsonp',
     },
 ....
 ....

次に、応答が有効な jsonp 応答 ではないため、このエラーが発生しています。

jsonplint.comを確認すると、このエラーが表示されました

Invalid JSONP
No callback function defined
Improper or no closing
  1. したがって、有効なコールバック関数が定義されていることを確認する必要があります。

  2. そうでなければ、できることは 1 つです。をに変更するtype:'jsonp'type:'ajax'、他に何も変更しなくても問題が解決するはずです。

于 2012-04-27T02:39:30.323 に答える
0

私の推測では、アクセスしているサービスは JSON を返しますが、 JSONPは返しません。jsonp タグで「unexpected token」を検索します。たとえば、この JSONP フィードが「予期しないトークン」エラーをスローするのはなぜですか?

于 2012-04-27T00:57:04.707 に答える