我试图在Python中编码、存储和解码参数,但在过程中迷失了方向。以下是我的步骤:
1)我使用Google Toolkit的
2)在我的服务器(Python)上,我将这些字符串参数存储为类似于
3)我对存储的值调用
结果是,当我尝试记录%转义的结果时,我收到了一个异常。我是否忽略了某个关键步骤来应用于具有\u和\x格式的存储值,以便将其正确转换为通过http发送?
更新:下面标记为答案的建议对我起作用了。为了完整起见,我提供了一些更新以解决下面的评论。
我收到的异常引用了
该
1)我使用Google Toolkit的
gtm_stringByEscapingForURLArgument
将NSString适当地转换为HTTP参数。2)在我的服务器(Python)上,我将这些字符串参数存储为类似于
u'1234567890-/:;()$&@".,?!\'[]{}#%^*+=_\\|~<>\u20ac\xa3\xa5\u2022.,?!\''
的形式。(请注意,这些是iPhone键盘上“123”视图和“# +=”视图中的标准键,其中包含一些货币前缀,如英镑、日元等)3)我对存储的值调用
urllib.quote(myString,'')
,可能是为了将它们进行百分号转义,以便传输给客户端,以便客户端可以取消转义。结果是,当我尝试记录%转义的结果时,我收到了一个异常。我是否忽略了某个关键步骤来应用于具有\u和\x格式的存储值,以便将其正确转换为通过http发送?
更新:下面标记为答案的建议对我起作用了。为了完整起见,我提供了一些更新以解决下面的评论。
我收到的异常引用了
\u20ac
的问题。我不知道这是否特别是它的问题,而不是它是字符串中的第一个unicode字符。该
\u20ac
字符是“欧元”符号的unicode。我基本上发现除非我使用urllib2的quote
方法,否则我会遇到问题。