在WebResponse响应处获得的Paypal 400错误请求错误响应= request.GetResponse();

杰克普拉提克

我正在尝试为沙盒测试帐户集成Paypal API。当我尝试从请求代码获取访问令牌时,我收到400错误的请求错误。

cshtml:转到paypal Js:函数GetPaypal(){window.location =“ https://www.sandbox.paypal.com/webapps/auth/protocol/openidconnect/v1/authorize?client_id=clientid&response_type=code&scope=Email&redirect_uri=http: // localhost:4427 / “; }

C#代码:我正在使用以下代码获取代码。

公共ActionResult索引(字符串代码)

{
        if (code != null)
        { 
            string postcontents = string.Format("client_id={0}&client_secret={1}&grant_type=authorization_code&redirect_uri={2}&code={3}"
                                      , System.Web.HttpUtility.UrlEncode("client_id")
                                      , System.Web.HttpUtility.UrlEncode("Client Secret")
                                      , System.Web.HttpUtility.UrlEncode("http://localhost:4427/")
                                      , System.Web.HttpUtility.UrlEncode(code));
            HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("https://api.sandbox.paypal.com/v1/identity/openidconnect/tokenservice");
            request.Method = "POST";
            byte[] postcontentsArray = System.Text.Encoding.UTF8.GetBytes(postcontents);
            request.ContentType = "application/x-www-form-urlencoded";
            request.ContentLength = postcontentsArray.Length;
            //OAuth.
            using (Stream requestStream = request.GetRequestStream())
            {
                requestStream.Write(postcontentsArray, 0, postcontentsArray.Length);
                requestStream.Close();
                WebResponse response = request.GetResponse();
                using (Stream responseStream = response.GetResponseStream())
                using (StreamReader reader = new StreamReader(responseStream))
                {
                    string responseFromServer = reader.ReadToEnd();
                    reader.Close();
                    responseStream.Close();
                    response.Close();
                    // return SerializeToken(responseFromServer);
                    dynamic dynObj = JsonConvert.DeserializeObject(responseFromServer);
                    string token = dynObj["access_token"];
                    //token = ser.Deserialize<ImportContacts._Default.GoogleOAuthToken>(responseFromServer);
                }
            }
        }
        return View();

}

巴文·帕托利亚

请按以下方式更改您的CSHTML网址:

 <script type="text/javascript">
        function GetGmailContacts() {
            window.location = "https://www.sandbox.paypal.com/webapps/auth/protocol/openidconnect/v1/authorize?client_id=clientid&response_type=code+id_token&scope=openid profile email&redirect_uri=localhost_url";
        }  
  </script>

C#代码:-

public ActionResult Index(string code,string id_token)
  {
        if (code != null)
        { 
            string postcontents = string.Format("client_id={0}&client_secret={1}&grant_type=authorization_code&redirect_uri={2}&code={3}"
                                      , System.Web.HttpUtility.UrlEncode("client_id")
                                      , System.Web.HttpUtility.UrlEncode("Client Secret")
                                      , System.Web.HttpUtility.UrlEncode(localhost_url)
                                      , System.Web.HttpUtility.UrlEncode(code));
            HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create("https://api.sandbox.paypal.com/v1/identity/openidconnect/tokenservice");
            request.Method = "POST";
            byte[] postcontentsArray = System.Text.Encoding.UTF8.GetBytes(postcontents);
            request.ContentType = "application/x-www-form-urlencoded";
            request.ContentLength = postcontentsArray.Length;
            //OAuth.
            using (Stream requestStream = request.GetRequestStream())
            {
                requestStream.Write(postcontentsArray, 0, postcontentsArray.Length);
                requestStream.Close();
                WebResponse response = request.GetResponse();
                using (Stream responseStream = response.GetResponseStream())
                using (StreamReader reader = new StreamReader(responseStream))
                {
                    string responseFromServer = reader.ReadToEnd();
                    reader.Close();
                    responseStream.Close();
                    response.Close();
                    // return SerializeToken(responseFromServer);
                    dynamic dynObj = JsonConvert.DeserializeObject(responseFromServer);
                    string token = dynObj["access_token"];
                    //token = ser.Deserialize<ImportContacts._Default.GoogleOAuthToken>(responseFromServer);
                }
            }
        }
        return View();
}

我希望它能起作用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

WebResponse response = response .GetResponse()在发布数据和获取响应时给出错误请求错误

来自分类Dev

request.getResponse() 出现错误

来自分类Dev

调试400错误请求响应

来自分类Dev

AJAX请求的“ 400错误请求”响应

来自分类Dev

request.GetResponse()超时

来自分类Dev

响应代码:400 响应消息:错误请求 Apache jmeter

来自分类Dev

Angular-总是收到400错误的请求响应

来自分类Dev

Android Retrofit 2:随机代码400(错误请求)响应

来自分类Dev

通过telnet获得对简单HTTP GET请求的“ 400错误请求”响应

来自分类Dev

HTTP请求错误与响应错误

来自分类Dev

由于“ WebRequest”导致的GetResponse()错误

来自分类Dev

请求已中止:操作已超时。在 HttpWebResponse.Request.GetResponse() 上

来自分类Dev

Instagram无效响应错误-400

来自分类Dev

烧瓶测试-功能测试错误-响应流[400错误请求]

来自分类Dev

在Web API 2中返回带有400错误请求响应的错误消息列表

来自分类Dev

“消息正文格式错误。无法映射到预期格式”响应与 400 Bad request 更新控制器服务时

来自分类Dev

带响应的请求承诺错误

来自分类Dev

API响应错误请求错误消息

来自分类Dev

LUIS响应引发错误的错误请求

来自分类Dev

HttpWebRequest.GetResponse()返回404错误

来自分类Dev

WCF IIS服务文件流式传输远程服务器返回意外响应:(400)错误的请求。

来自分类Dev

Google的Oauth2响应提出了DotNetOpenAuth 400错误的请求

来自分类Dev

http:// localhost:3000 / api / stuff的Http失败响应:400错误的请求

来自分类Dev

G Suite用户:列表api调用失败,响应400:请求错误

来自分类Dev

无法加载资源:服务器在Angular + NodeJS上以400(错误请求)的状态响应

来自分类Dev

将XElement传递给Webservice。远程服务器返回意外响应:(400)错误的WebService请求

来自分类Dev

远程服务器返回了意外的响应:(400)错误的请求WCF REST

来自分类Dev

IdentityServer3响应状态代码未指示成功:400(错误请求)

来自分类Dev

angularjs:加载资源失败:服务器响应状态为 400(错误请求)

Related 相关文章

  1. 1

    WebResponse response = response .GetResponse()在发布数据和获取响应时给出错误请求错误

  2. 2

    request.getResponse() 出现错误

  3. 3

    调试400错误请求响应

  4. 4

    AJAX请求的“ 400错误请求”响应

  5. 5

    request.GetResponse()超时

  6. 6

    响应代码:400 响应消息:错误请求 Apache jmeter

  7. 7

    Angular-总是收到400错误的请求响应

  8. 8

    Android Retrofit 2:随机代码400(错误请求)响应

  9. 9

    通过telnet获得对简单HTTP GET请求的“ 400错误请求”响应

  10. 10

    HTTP请求错误与响应错误

  11. 11

    由于“ WebRequest”导致的GetResponse()错误

  12. 12

    请求已中止:操作已超时。在 HttpWebResponse.Request.GetResponse() 上

  13. 13

    Instagram无效响应错误-400

  14. 14

    烧瓶测试-功能测试错误-响应流[400错误请求]

  15. 15

    在Web API 2中返回带有400错误请求响应的错误消息列表

  16. 16

    “消息正文格式错误。无法映射到预期格式”响应与 400 Bad request 更新控制器服务时

  17. 17

    带响应的请求承诺错误

  18. 18

    API响应错误请求错误消息

  19. 19

    LUIS响应引发错误的错误请求

  20. 20

    HttpWebRequest.GetResponse()返回404错误

  21. 21

    WCF IIS服务文件流式传输远程服务器返回意外响应:(400)错误的请求。

  22. 22

    Google的Oauth2响应提出了DotNetOpenAuth 400错误的请求

  23. 23

    http:// localhost:3000 / api / stuff的Http失败响应:400错误的请求

  24. 24

    G Suite用户:列表api调用失败,响应400:请求错误

  25. 25

    无法加载资源:服务器在Angular + NodeJS上以400(错误请求)的状态响应

  26. 26

    将XElement传递给Webservice。远程服务器返回意外响应:(400)错误的WebService请求

  27. 27

    远程服务器返回了意外的响应:(400)错误的请求WCF REST

  28. 28

    IdentityServer3响应状态代码未指示成功:400(错误请求)

  29. 29

    angularjs:加载资源失败:服务器响应状态为 400(错误请求)

热门标签

归档