Discussion:
[Mojolicious] Mojo::UserAgent query with caret '^'
Sylvain Thibault
2018-10-27 23:35:53 UTC
Permalink
Given URL https://somehost.com.com/streamer/1.0?s=^GSPC

When doing a GET, Mojo::UserAgent encodes the caret '^' as %5E
The server returns NOT FOUND.

So this transaction from Mojo::UserAgent returns NOT FOUND:

GET /streamer/1.0?s=%5EGSPC&k=l86,l84,p20 HTTP/1.1
Host: somehost.com
Accept: */*
User-Agent: Mojolicious (Perl)
Content-Length: 0

This transaction using curl with the caret not encoded returns the desired
output:

GET /streamer/1.0?s=^GSPC&k=l86,l84,p20 HTTP/1.1
Host: streamerapi.finance.yahoo.com
User-Agent: curl/7.61.1
Accept: */*

How does one send a caret '^' in a URL without encoding it to %5E ?

Using a symbol without a caret works great in the Mojo::UserAgent version
of the code.

Thanks,

Sylvain Thibault
--
You received this message because you are subscribed to the Google Groups "Mojolicious" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mojolicious+***@googlegroups.com.
To post to this group, send email to ***@googlegroups.com.
Visit this group at https://groups.google.com/group/mojolicious.
For more options, visit https://groups.google.com/d/optout.
Loading...