Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Re^2: Perl json parser and JSONP issue

by heatblazer (Scribe)
on Jun 15, 2012 at 14:25 UTC ( #976437=note: print w/ replies, xml ) Need Help??


in reply to Re: Perl json parser and JSONP issue
in thread Perl json parser and JSONP issue

I know that, so that`s why I posted my javascript code. You can clearly see that I am passing a JSON file to a callback function, as I followed 2 examples. I just get nothing. When I press the button ( who executes the JSONP creation ) it`s ok, in firebug I do see the json object clearly, it is in the DOM but nothing more.. Most examples say that this must work fine.


Comment on Re^2: Perl json parser and JSONP issue
Re^3: Perl json parser and JSONP issue
by tobyink (Abbot) on Jun 15, 2012 at 14:39 UTC

    "You can clearly see that I am passing a JSON file to a callback function"

    Yes - that's entirely the problem. Your function expects to be get JSONP, and it's being given JSON. As I said: JSON and JSONP are different file formats.

    You script is trying to get some JSONP from http://localhost/dat.json?callback=dbg but it's being given JSON. JSON and JSONP are different file formats.

    Here's an example JSON file:

    { "name": "Joe Bloggs" }

    Here's an example JSONP file:

    process({ "name": "Joe Bloggs" });

    As you can see, they look a little bit different. That's because JSON and JSONP are different file formats.

    Also, make sure you're sending the correct HTTP headers.

    • For JSON, you want Content-Type: application/json.
    • For JSONP, you want Content-Type: application/ecmascript or Content-Type: application/javascript or Content-Type: text/javascript.

    Note the difference: that's because JSON and JSONP are different file formats.

    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

      Well you are right... it`s kind of confusing... So if I am right, every time I create and record a JSON, I have to convert it to JSONP with wrapping it with the function before calling it back...

        Typically you'd configure your web server (or some other piece of middleware) to convert your JSON to JSONP on the fly. I'm surprised there isn't an Apache mod_jsonp that I can point you towards.

        perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://976437]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (14)
As of 2014-09-19 12:49 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    How do you remember the number of days in each month?











    Results (138 votes), past polls