Re: [OAUTH-WG] application/x-www-form-urlencoded vs JSON

Torsten Lodderstedt <torsten@lodderstedt.net> Mon, 19 April 2010 11:48 UTC

Return-Path: <torsten@lodderstedt.net>
X-Original-To: oauth@core3.amsl.com
Delivered-To: oauth@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 52BE53A6A71 for <oauth@core3.amsl.com>; Mon, 19 Apr 2010 04:48:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.042
X-Spam-Level:
X-Spam-Status: No, score=-1.042 tagged_above=-999 required=5 tests=[AWL=1.207, BAYES_00=-2.599, HELO_EQ_DE=0.35]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ULNnrUX7VgxW for <oauth@core3.amsl.com>; Mon, 19 Apr 2010 04:48:36 -0700 (PDT)
Received: from smtprelay01.ispgateway.de (smtprelay01.ispgateway.de [80.67.18.13]) by core3.amsl.com (Postfix) with ESMTP id 405913A6A65 for <oauth@ietf.org>; Mon, 19 Apr 2010 04:48:35 -0700 (PDT)
Received: from [80.67.16.111] (helo=localhost) by smtprelay01.ispgateway.de with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.68) (envelope-from <torsten@lodderstedt.net>) id 1O3pSj-0006wg-My; Mon, 19 Apr 2010 13:48:25 +0200
Received: from ( [195.243.113.249]) by webmail.df.eu (Horde Framework) with HTTP; Mon, 19 Apr 2010 13:48:25 +0200
Message-ID: <20100419134825.134951nuzvi35hk4@webmail.df.eu>
Date: Mon, 19 Apr 2010 13:48:25 +0200
From: Torsten Lodderstedt <torsten@lodderstedt.net>
To: Eran Hammer-Lahav <eran@hueniverse.com>
References: <9890332F-E759-4E63-96FE-DB3071194D84@gmail.com> <90C41DD21FB7C64BB94121FBBC2E723438E30A379B@P3PW5EX1MB01.EX1.SECURESERVER.NET>
In-Reply-To: <90C41DD21FB7C64BB94121FBBC2E723438E30A379B@P3PW5EX1MB01.EX1.SECURESERVER.NET>
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"; DelSp="Yes"; format="flowed"
Content-Disposition: inline
Content-Transfer-Encoding: 7bit
User-Agent: Dynamic Internet Messaging Program (DIMP) H3 (1.1.2)
X-Originating-IP: 195.243.113.249
X-Df-Sender: 141509
Cc: OAuth WG <oauth@ietf.org>
Subject: Re: [OAUTH-WG] application/x-www-form-urlencoded vs JSON
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/oauth>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 19 Apr 2010 11:48:37 -0000

> We can also offer both and define a client request parameter (as  
> long as the server is required to make at least one format available).

+1 on this

regards,
Torsten.

>
> EHL
>
>> -----Original Message-----
>> From: oauth-bounces@ietf.org [mailto:oauth-bounces@ietf.org] On Behalf
>> Of Dick Hardt
>> Sent: Sunday, April 18, 2010 9:30 PM
>> To: OAuth WG
>> Subject: [OAUTH-WG] application/x-www-form-urlencoded vs JSON
>>
>> The AS token endpoint response is encoded as application/x-www-form-
>> urlencoded
>>
>> While this reuses a well known and understood encoding standard, it is
>> uncommon for a client to receive a message encoded like this. Most server
>> responses are encoded as XML or JSON. Libraries are NOT reedily available to
>> parse application/x-www-form-urlencoded results as this is something that is
>> typically done in the web servers framework. While parsing the name value
>> pairs and URL un-encoding them is not hard, many developers have been
>> caught just splitting the parameters and forgetting to URL decode the token.
>> Since the token is opaque and may contain characters that are  
>> escaped, it is a
>> difficult bug to detect.
>>
>> Potential options:
>>
>> 1) Do nothing, developers should read the specs and do the right thing.
>>
>> 2) Require that all parameters are URL safe so that there is no  
>> encoding issue.
>>
>> 3) Return results as JSON, and recommend that parameters be URL safe.
>>
>> -- Dick
>> _______________________________________________
>> OAuth mailing list
>> OAuth@ietf.org
>> https://www.ietf.org/mailman/listinfo/oauth
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth
>