[Mojolicious] Mojo::UserAgent query with caret '^'
Sylvain Thibault
2018-10-27 23:35:53 UTC
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

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.


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.