0

我正在尝试使用他的 GET 方法获取一些值

我的网址是

 
http://myweb.info/WNWS/WNS/RequestFBUser?UN=sona.mv&E=sona@gmail.com&FBN=SonaMv&FBI=100003833776130&FN=Sona&LN=Mv&DID=8f0043b4-84bc-461f-a7d0-477dadab9687&DT=I

我的代码是

void facebookLogin(string input){
    WWW www = new WWW(input);
    StartCoroutine(WaitForFbLogin(www));
}

我收到以下错误:

操作无法完成。没有这样的文件或目录

问题在于电子邮件地址中的“@”字符。我无法避免这一点。

如何解决这个问题?

4

1 回答 1

1

您需要转义部分 URL,但不是全部。正如 Unity 的EscapeURL文档中所述,该方法仅适用于插入到 URL 中的参数,表示参数名称和值(尽管它也可以用于路径的某些部分,例如,目录名称中有空格, ETC。)。“&”和“=”应该保持原样,因为它们决定了参数名称和值之间的界限。如果它们是参数名称或值的一部分,则只需要对其进行编码,因为它们会干扰稍后的解析(即解析器可能认为有一个附加参数)。

在这种特殊情况下,“@”应该是最终输出中的唯一修改。

于 2013-10-11T09:03:36.693 回答