JSON javascript kodu Passing

2 Cevap php

Ben yürütmek için jQuery kodu için bir JSON sonuç gömülü javascript kodu geri dönmek için gereken bir PHP komut dosyası için jQuery ile bir AJAX çağrısı yapıyorum. Nasıl JSON javascript kodu geçen gidiyorsun?

2 Cevap

Iki yolu vardır:

  1. Bir dize olarak geçmesi ve istemci tarafında eval() kullanmak gerekecek.
  2. Sen JSONP kullanmak, ve bunun yerine bir çağrı yapmanın yapabilirsiniz, istemci tarafı komut dosyası onun src yeni komut verir, sunucu tarafı kod işaret ile bir <script> girmek var.

Her iki durumda da, emin de bunu güvenli hale - kullanıcı nasılsa senin tepki içine kendi kodunu ekleyebilirsiniz, onlar biraz zarar verebilir.

JavaScript fonksiyonları taşınması için JSON tanımı izin vermez. Bu bağımsız bir dil olması anlamına da gelmektedir. Bir JSON çözümleyici yerine eval () kullanıyorsanız json herhangi bir fonksiyon içeriyorsa, başarısız olur.

Ben terim icat inanıyorum Douglas Crockford, JSON bir JSON parser for javascript var

Even JSONP doesn't return a function but a function call - myFuncIAskedFor({ returned JSON })
As others have mentioned, define your functions locally, it's the safest thing to do
Also use a JSON parser