On 06/10/2015 10:32 AM, Sven Van Caekenberghe wrote:
On 10 Jun 2015, at 17:24, David <stormb...@gmail.com> wrote:

El Wed, 10 Jun 2015 10:14:37 -0500
Jimmie Houchin <jlhouc...@gmail.com>
escribió:
Hello,

I am attempting to use ZnClient to request data. The request requires
a %2C (comma) delimited string as part of the query. Below is a
snippet.

znClient
         addPath: '/v1/instruments';
         queryAt: 'fields' putAll: 'displayName%2Cinstrument%2Cpip';
         get ;
         contents)

The string  'displayName%2Cinstrument%2Cpip'
is being converted to  'displayName%252Cinstrument%252Cpip'
which causes the request to fail.

The query needs to be
fields=displayName%2Cinstrument%2Cpip

I have not found how to do this correctly.
Any help greatly appreciated.

Thanks.

Jimmie


Maybe a silly thing, but since %2C = , ... Did you tried already to
make itself encode that? Like
znClient
          addPath: '/v1/instruments';
          queryAt: 'fields' putAll: 'displayName,instrument,pip';
          get ;
          contents)

I suspect it is using encoding internally, that is why % is also
encoded if you try to put it.

I hope that works
Not silly and no need to suspect, but absolutely correct !

Sven

That is what I thought would happen and what I tried first. But it is not being encoded from what I can find.

Inspect this in a workspace/playground.

ZnClient new
        https;
        host: 'google.com';
        addPath: '/commaTest';
        queryAt: 'fields' put: 'displayName,instrument,pip';
        yourself

View the request / requestLine / uri. The commas are still present in the URI.
So I tried encoding myself and get the other error.

Of course Google won't understand this and in this snippet won't receive it.

And please let me know if I am doing something wrong.

Any help greatly appreciated.

Jimmie



Reply via email to