Opened 14 years ago

Closed 14 years ago

Last modified 12 years ago

#373 closed defect (fixed)

form-urlencode doesn't encode slashes

Reported by: taylor_venable Owned by: sjamaan
Priority: major Milestone: 4.9.0
Component: extensions Version: 4.6.0
Keywords: uri-common Cc:
Estimated difficulty:

Description

Using form-urlencode (and hence, http-client when a function such as with-input-from-request is given an alist) doesn't encode slashes in parameter values. For example:

#;2> (form-urlencode '(("foo" . "<p>hello</p>")))
"foo=%3Cp%3Ehello%3C/p%3E"

This has caused some problems for me when receiving ends don't process the slash correctly. I worked around it by calling uri-encode-string directly (which does escape the slash) rather than having http-client do the encoding of an alist for me automatically.

Change History (7)

comment:1 Changed 14 years ago by taylor_venable

Component: unknownextensions
Keywords: uri-common added

By the way, I'm using Chicken 4.6.0rc1 on Linux x86_64 with uri-common 1.0; uri-generic 2.34; http-client 0.1

comment:2 Changed 14 years ago by sjamaan

Owner: set to sjamaan
Status: newaccepted

comment:3 Changed 14 years ago by sjamaan

Fixed in [20244]. Please test the trunk version of uri-common and let me know if it works for you.

comment:4 Changed 14 years ago by taylor_venable

Resolution: fixed
Status: acceptedclosed

Yes, uri-common trunk works; everything in my sample requests seems to be escaped properly. Thank you.

comment:5 Changed 14 years ago by sjamaan

ok, I've tagged and released uri-common 1.1

comment:6 Changed 14 years ago by felix winkelmann

Milestone: 4.7.04.8.0

Milestone 4.7.0 deleted

comment:7 Changed 12 years ago by felix winkelmann

Milestone: 4.8.04.9.0

Milestone 4.8.0 deleted

Note: See TracTickets for help on using tickets.