Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.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
C# 某些用户名的PayPal验证失败_C#_.net_Utf 8_Paypal Ipn_Asp.net Webpages - Fatal编程技术网

C# 某些用户名的PayPal验证失败

C# 某些用户名的PayPal验证失败,c#,.net,utf-8,paypal-ipn,asp.net-webpages,C#,.net,Utf 8,Paypal Ipn,Asp.net Webpages,我通过使用以下方法将ASP网页中收到的PayPal请求发回PayPal来验证该请求: public bool ValidateRequest(HttpRequest request) { var sb = new StringBuilder(); sb.Append("cmd=_notify-validate"); foreach (string paramName in request.Form) {

我通过使用以下方法将ASP网页中收到的PayPal请求发回PayPal来验证该请求:

    public bool ValidateRequest(HttpRequest request)
    {
        var sb = new StringBuilder();
        sb.Append("cmd=_notify-validate");
        foreach (string paramName in request.Form)
        {
            var paramValue = UrlEncode(request.Form[paramName]);
            sb.AppendFormat("&{0}={1}", paramName, paramValue);
        }
        var parameters = sb.ToString();
        var data = Encoding.UTF8.GetBytes(parameters);

        var webClient = new WebClient();
        webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
        var uploadData = webClient.UploadData(validatingUrl, "POST", data);
        var message = Encoding.UTF8.GetString(uploadData);

        return message == "VERIFIED";
    }
这段代码在过去两年中一直工作得很完美,直到我收到一位名叫拉蒙·马汀(Ramón Martín)的用户的付款。以下是他的名字如何从IPN中记录的:

last_name=Mart�n&first_name=Ram�n


上述方法适用于中文、日文和俄文名称。有没有办法解决当前情况下的问题?

您是否尝试将编码格式更改为windows-1252?在您的代码中,您已将其设置为UTF-8,我可以看到Ó和í的名称。尝试使用windows-1252编码,看看它是否能给您带来另一种解脱。

您是否尝试将编码格式更改为windows-1252?在您的代码中,您已将其设置为UTF-8,我可以看到Ó和í的名称。尝试使用windows-1252编码,看看它是否能给您带来另一种解脱。

问题是PayPal按钮的默认编码是windows-1252。 必须将其更改为UTF-8

你可以通过教皇->我的个人资料->我的销售工具->贝宝按钮语言编码->更多选项->UTF-8来完成




问题在于贝宝按钮的默认编码是windows-1252。 必须将其更改为UTF-8

你可以通过教皇->我的个人资料->我的销售工具->贝宝按钮语言编码->更多选项->UTF-8来完成