Jason, I like what you're getting at.. a lot.

2009/11/9 Jason Persampieri <papp...@gmail.com>

> I agree with pretty much everything Julian said.  And while I don't
> have a problem with $.get(url, onSuccess, onError), I can see how this
> isn't "jQuery-like".
>
> Right now, $.get returns an XmlHttpRequest object.  What if that
> object were extended a bit?
>
> $.get(url, callback).error( onError )
>
> Or, heck, go even crazier.... all $.ajax calls return a jQueryAjax
> Object (that responds to everything XmlHttpRequest objects do... for
> backwards compatibility)... that could lead to
>
> $.get(url).success( callback ).error( callback ).
>
> Interestingly, this would lead to the ability to cleanly request a
> resource, then define how you want to handle it later on, even after
> it's already come back.
>
> That's at least a *little* more jQuery-like :)
>
> _jason
>
> On Nov 9, 9:49 am, Julian Aubourg <aubourg.jul...@gmail.com> wrote:
> > OK and well I guess, but I'll go back to my original statement too then:
> > "simple cases don't protect from temporary connection and/or server
> > shutdowns, do they?". Like I said, I will use $.ajax anyway, but let me
> > re-iterate that simple in design (rather in signature here) does not mean
> > suitable for simple cases. The OP problem is quite clear: for "serious
> work"
> > (ie: in real world production), error handling is mandatory because no
> > matter how simple the ajax call, error can (and will) occur. I'm afraid
> the
> > simple cases you're refering to are nothing more than proof of concepts
> and
> > I personally don't use jQuery to do prototypes but real world web sites.
> >
> > That being said, the current status of $.get and $.post also pushes
> > developers into ignoring errors altogether which makes for plugins you
> have
> > to modify (or just plain rewrite) for production use (sadly talking from
> > experience here).
> >
> > Finally, handling error cases with $.ajaxError in that case is like
> crushing
> > an egg with a grand piano.
> >
> > And before anybody jumps at my throat, let me say again that I mean no
> > disrespect: I admire the work you guys put into jQuery and I shudder to
> > imagine how I would develop without this fantastic toolbox but, as of
> today,
> > $.get and $.post are not "write less, do more", they are "write less, do
> > half the work".
> >
> > But well, what do I care? I never use them anyway ;)
> >
> > 2009/11/9 John Resig <jere...@gmail.com>
> >
> > > Ok, so I go back to my original statement: "Really the get and post
> > > methods are meant to be simple cases, everything else should be
> > > tackled with the ajax method."
> >
> > > --John
> >
> > > On Mon, Nov 9, 2009 at 4:48 PM, Julian Aubourg <
> aubourg.jul...@gmail.com>
> > > wrote:
> > > > Well, to be honest, I never ever use $.get or $.put (or $.getJSON).
> The
> > > main
> > > > reason is that there is no error callback which, in my opinion, makes
> > > them
> > > > completely useless in any production environment.
> >
> > > > Now I understand the convention being broken argument, but the two
> > > callback
> > > > solution:
> > > > - does not break current code, ever,
> > > > - does not necessitate jQuery to create a special error callback that
> > > will
> > > > redirect to the dual callback function,
> > > > - does not necessitate branching in user code.
> >
> > > > I dunno, but for helper functions, I'd be willing to sacrifice some
> api
> > > > purity and have them really useful yet backward compatible. But, then
> > > again,
> > > > I never had the responsibility of anything that's became as huge as
> > > jQuery,
> > > > so...
> >
> > > > 2009/11/9 John Resig <jere...@gmail.com>
> >
> > > >> > Wouldn't it still break some scripts that actually expect the data
> > > never
> > > >> > to
> > > >> > be undefined?
> >
> > > >> As I mentioned before - the application would just break in a
> > > >> different way. Normally it would break in that the result would
> never
> > > >> come in - now it would throw an exception (again, that's assuming
> that
> > > >> if they're trying to do something directly with the object - a more
> > > >> likely result is seeing "null" outputted somewhere).
> >
> > > >> > Why not the following:
> >
> > > >> > $.get("someurl", function(data) {
> > > >> >    // got results
> > > >> >  }, function(errorMessage) {
> > > >> >    // got error
> > > >> >  });
> >
> > > >> > That way, actual scripts behave as usual and new ones can provide
> an
> > > >> > error
> > > >> > callback.
> >
> > > >> > Thoughts?
> >
> > > >> I'm not a huge fan of this - having dual functions being passed in
> as
> > > >> arguments is messy and against the current jQuery conventions. I
> feel
> > > >> like if you're passing in so many functions why not just use $.ajax
> > > >> and be done with it? Especially since $.ajax is so much more
> explicit
> > > >> any way.
> >
> > > >> Either we should find a simple solution (like what I proposed) or do
> > > >> no change at all.
> >
> > > >> --John
> >
> > > >> --
> >
> > > >> You received this message because you are subscribed to the Google
> > > Groups
> > > >> "jQuery Development" group.
> > > >> To post to this group, send email to jquery-...@googlegroups.com.
> > > >> To unsubscribe from this group, send email to
> > > >> jquery-dev+unsubscr...@googlegroups.com<jquery-dev%2bunsubscr...@googlegroups.com>
> <jquery-dev%2bunsubscr...@googlegroups.com<jquery-dev%252bunsubscr...@googlegroups.com>
> >
> > > .
> > > >> For more options, visit this group at
> > > >>http://groups.google.com/group/jquery-dev?hl=en.
> >
> > > > --
> >
> > > > You received this message because you are subscribed to the Google
> Groups
> > > > "jQuery Development" group.
> > > > To post to this group, send email to jquery-...@googlegroups.com.
> > > > To unsubscribe from this group, send email to
> > > > jquery-dev+unsubscr...@googlegroups.com<jquery-dev%2bunsubscr...@googlegroups.com>
> <jquery-dev%2bunsubscr...@googlegroups.com<jquery-dev%252bunsubscr...@googlegroups.com>
> >
> > > .
> > > > For more options, visit this group at
> > > >http://groups.google.com/group/jquery-dev?hl=en.
> >
> > > --
> >
> > > You received this message because you are subscribed to the Google
> Groups
> > > "jQuery Development" group.
> > > To post to this group, send email to jquery-...@googlegroups.com.
> > > To unsubscribe from this group, send email to
> > > jquery-dev+unsubscr...@googlegroups.com<jquery-dev%2bunsubscr...@googlegroups.com>
> <jquery-dev%2bunsubscr...@googlegroups.com<jquery-dev%252bunsubscr...@googlegroups.com>
> >
> > > .
> > > For more options, visit this group at
> > >http://groups.google.com/group/jquery-dev?hl=en.
>
> --
>
> You received this message because you are subscribed to the Google Groups
> "jQuery Development" group.
> To post to this group, send email to jquery-...@googlegroups.com.
> To unsubscribe from this group, send email to
> jquery-dev+unsubscr...@googlegroups.com<jquery-dev%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/jquery-dev?hl=en.
>
>
>

--

You received this message because you are subscribed to the Google Groups 
"jQuery Development" group.
To post to this group, send email to jquery-...@googlegroups.com.
To unsubscribe from this group, send email to 
jquery-dev+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/jquery-dev?hl=en.


Reply via email to