You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@olingo.apache.org by "Ralf Handl (JIRA)" <ji...@apache.org> on 2015/08/11 09:54:45 UTC

[jira] [Comment Edited] (OLINGO-752) Add support for "+" sign as a separator in addition to %20 for URLs

    [ https://issues.apache.org/jira/browse/OLINGO-752?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14680239#comment-14680239 ] 

Ralf Handl edited comment on OLINGO-752 at 8/11/15 7:54 AM:
------------------------------------------------------------

The + character is a valid character in URLs that does not have to be percent-encoded. In OData-URLs it can appear 
- within numbers, e.g. +3.14, 1e+2
- within strings, e.g. 'Divide+Conquer'

How can the server safely decide whether the client is using form-URL-encoding, or standard URL-encoding? 
- $filter=contains(Name,'+')
could either mean
- all entities whose Name contains a plus character if the client is a standard OData client, or
- all entities whose Name contains a space character if the client is a form-encoding client



was (Author: ralfhandl):
The + character is a valid character in URLs that does not have to be percent-encoded. In OData-URLs it can appear 
 - within numbers, e.g. +3.14, 1e+2
- within strings, e.g. 'Divide+Conquer'

How can the server safely decide whether the client is using form-URL-encoding, or standard URL-encoding?


> Add support for "+" sign as a separator in addition to %20 for URLs
> -------------------------------------------------------------------
>
>                 Key: OLINGO-752
>                 URL: https://issues.apache.org/jira/browse/OLINGO-752
>             Project: Olingo
>          Issue Type: New Feature
>          Components: odata2-core
>    Affects Versions: V2 2.0.4, (Java) V4 4.0.0-beta-03
>            Reporter: Ronny Bremer
>            Priority: Minor
>
> Some well-known OData client libraries, such as JQuery, are using the incorrect encoding for URLs sent to OLingo based OData v2 services.
> According to the OData V2 standard, the separator for encoded URLs is %20.
> However, in many cases when developers talk about "URL encoding", they use Java functions like "URLEncoder.encode()" to encode the parameters for their HTTP request. JQuery seems to utilise a similar function in JavaScript.
> Now these functions are based on the HTTP forms encoding standard, so they use "+" as a separator.
> If would be small but grateful addition to the OLingo URI parser to accept both separator characters. Maybe with a config option to follow the standard (so only accept %20) or to be more relaxed (and accept both).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)