Did you push your changes to your fork of Wonder on GitHub?

> 
> indeed! 
> 
> overkill!
> 
> and I HATE killing overs!
> 
> but when you say "ERRest will look at the request" -- isn't that what I'm 
> trying to do?
> 
> or I should say, how should I bet implement this callback query argument is 
> present?
> 
> aside from setting up a few keys for jsonp, at this time, I simply set the 
> response header to javascript and I "can" the callback method name.
> 
> you'll see I had written in some code which I figured would get the requested 
> callback name and send via userInfo, which is obviously not needed.
> 
> so, can I somehow access the request from here? or how do I otherwise look at 
> the request at the right time and do the right thing?
> 
> 
> 
> 
> 
> 
> public class ERXJSONPRestWriter extends ERXJSONRestWriter {
>       
>       public void appendHeadersToResponse(ERXRestRequestNode node, 
> IERXRestResponse response, ERXRestContext context) {
>               response.setHeader("text/javascript;charset=UTF-8", 
> "Content-Type");
>       }
> 
>       public void appendToResponse(ERXRestRequestNode node, IERXRestResponse 
> response, ERXRestFormat.Delegate delegate, ERXRestContext context) {
>               String callbackName = (String) 
> context.userInfoForKey("callback");
>               
>               if (callbackName != null)
>                       response.appendContentString(callbackName + "(");
>               else 
>                       response.appendContentString("callback(");
>               
> 
>               node = processNode(node);
>               if (node != null) {
>                       node._removeRedundantTypes();
>               }
>               
>               appendHeadersToResponse(node, response, context);
>               Object object = node.toJavaCollection(delegate);
>               if (object == null) {
>                       response.appendContentString("undefined");
>               }
>               else if (ERXRestUtils.isPrimitive(object)) {
>                       response.appendContentString(String.valueOf(object));
>               }
>               else {
>                       
> response.appendContentString(JSONSerializer.toJSON(object, 
> configWithContext(context)).toString());
>               }
>               
>               response.appendContentString(");");
>       }
> 
> }
> 
> 
> 
> On Jul 13, 2012, at 7:50 PM, Pascal Robert <prob...@macti.ca> wrote:
> 
>> That's overkill :-) It should be implemented like the window.name transport, 
>> e.g. ERRest will look at the request to see if a "callback" query argument 
>> was passed, and if yes, wrap it.
>> 
>>> I'm adding an ERXJSONPRestWriter in Wonder, to support JSONP in ERRest
>>> 
>>> so, like getting any ERRest format request, you can now also get jsonp:
>>> 
>>> /ra/Person/306.jsonp
>>> 
>>> so far, so good 
>>> 
>>> the spec. calls for an optional callback method name, requested on the URL
>>> 
>>> /ra/Person/306.jsonp?callback=parseResponse
>>> 
>>> or, it seems less commonly:
>>> 
>>> /ra/Person/306.jsonp?jsonp=parseResponse
>>> 
>>> The RestWriter didn't have access to the originating request, so I figured 
>>> I'd send in the method name through the userInfo dictionary and I'd be able 
>>> to pick that up in the writer?
>>> 
>>> So, I thought I'd write something like a ERXJSONPRestResponseWriter? 
>>> 
>>> But that's not really what I should do? I can see I'm onto the wrong track 
>>> here -
>>> 
>>> Does anyone know the internals of ERRest well enough to help guide me just 
>>> a bit here?
>>> 
>>> I suspect if I can get my head around the design, I can check in this stuff 
>>> in case anyone needs cross origin or jsonp support for whatever reason.
>>> 
>>> Thanks for any advice!
>>> 
>>> 
>>> 
>>> _______________________________________________
>>> Do not post admin requests to the list. They will be ignored.
>>> Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
>>> Help/Unsubscribe/Update your Subscription:
>>> https://lists.apple.com/mailman/options/webobjects-dev/probert%40macti.ca
>>> 
>>> This email sent to prob...@macti.ca
>> 
> 


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to