Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 如何用数组对Actionscript进行URL编码_Actionscript 3_Oauth_Binary_Bytearray - Fatal编程技术网

Actionscript 3 如何用数组对Actionscript进行URL编码

Actionscript 3 如何用数组对Actionscript进行URL编码,actionscript-3,oauth,binary,bytearray,Actionscript 3,Oauth,Binary,Bytearray,我需要上传URL编码的二进制数据到tumblr 这就是我目前正在尝试的: baseString.params = 'data[0]=' + URLEncoding.encode(byte.toString()).replace('~','%257E'); 有什么想法吗?好吧,首先,你的url编码看起来有些疯狂。您在上面发布的示例似乎是双重编码的: >>> x = unescape("%25C3%25BF%25C3%2598%25C3") >>

我需要上传URL编码的二进制数据到tumblr

这就是我目前正在尝试的:

            baseString.params = 'data[0]=' + URLEncoding.encode(byte.toString()).replace('~','%257E');

有什么想法吗?

好吧,首先,你的url编码看起来有些疯狂。您在上面发布的示例似乎是双重编码的:

>>> x = unescape("%25C3%25BF%25C3%2598%25C3")
>>> x
"%C3%BF%C3%98%C3"
>>> unescape(x)
"ÿÃÃ"
其次,如果
ByteArray
包含二进制数据,则不应使用
ByteArray.toString()。相反,如果我没有记错的话,您应该使用
ba.readMultiByte(ba.bytesavable,“latin1”)
,它将返回一个包含原始字节的字符串

第三,我觉得你的
URLEncoding
类很可疑。相反,您可以只使用
escape
(和
unescape
)内置项:

>>> escape("\12")
"%0A"

怎么了?它看起来应该可以工作…我从Tumblr收到一个“未授权”响应。你确定问题出在你的URL编码上,而不是别的什么吗?是的,我用baseString.params='body=test'替换了上面的行;哪个字段是文本帖子所需的字段,它工作得很好。你能把字符串的编码版本发布给他们吗?另外,
“数据[0]”
似乎有点奇怪-您确定这是正确的参数名称吗?还有,unicode和它有什么关系吗?(我不记得
ByteArray.toString()
是如何处理的…)Downvoter:你介意解释一下你自己吗,这样我可以改进我以后的问题吗?