Heh, well...
If we define a successful response as one defined by HTTP/1.1
standards, then any 2xx/3xx based response should be considered
successful. However, I can see that if you are interacting with a
layer such as $.ajax() that specified an expected dataType as a return
that it should reasonably error to some degree.
It is definitely a tangential issue - And is most likely apparent to
any RESTful applications that would rely on status codes to manipulate
client-side interaction.
Perhaps, a solution would be to have the option of defining callbacks
per status code.
E.g. $.ajax(..., {
'onStatusCode':
{ '200': {
'dataType': 'json',
'success': function(data) { },
'error': function(data) { }
}
'204': {
'success': function () {
}
}
}
}
- Or something that degree that would allow a 'lower-level' of
interaction with how $.ajax() would handle responses.
On Jul 22, 4:26 pm, John Resig <[email protected]> wrote:
> I guess that's a tangential issue, not really related to JSON - if a server
> returns a 204 (with no content) should we call success with a null or
> undefined data argument?
>
> At the moment I think that's far more likely that when you do a request, and
> you're expecting something (JSON, XML, etc.) and you don't get it (204 or
> not), that it should not count as a success. I'd be willing to tweak the
> docs to represent that. Of course, I'm willing to be convinced otherwise.
>
> --John
>
> On Wed, Jul 22, 2009 at 7:10 PM, Justinvh <[email protected]> wrote:
>
> > There is a parsererror, but the way the error callback is described
> > seems misleading. What if on a 200 response you returned JSON - But a
> > 204, being that the response code is 'NO CONTENT', would not have JSON
> > in it. Should it still error?
>
> > Shouldn't the desired effect be to ignore the data inside, or is this
> > logic that should be handled as a case in dataFilter?
>
> > On Jul 22, 3:17 pm, John Resig <[email protected]> wrote:
> > > What's the error message that you are receiving? Reading through the code
> > > I'd imagine that you would receive a 'parsererror', which seems
> > appropriate.
>
> > > --John
>
> > > On Wed, Jul 22, 2009 at 3:30 PM, Justinvh <[email protected]> wrote:
>
> > > > Can someone explain me the reasoning that if a dataType is specified
> > > > as JSON and the response code is say a 204 (NO CONTENT), that it would
> > > > error. The way it looks, the code is expecting JSON back, but since
> > > > there is no JSON, it fails.
>
> > > > The documentation however says that error is "A function to be called
> > > > if the request fails." - Which makes me think that the actual request
> > > > fails, not that the data parsed failed.
>
> > > > Maybe it's me, but it seems a bit confusing.
>
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"jQuery Development" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/jquery-dev?hl=en
-~----------~----~----~----~------~----~------~--~---