【问题标题】:Paytm Integration - SendOTP API -- 434 bad request errorPaytm 集成 - SendOTP API - 434 错误请求错误
【发布时间】:2019-10-23 03:08:13
【问题描述】:

致力于将 Paytm 与 C# 应用程序集成。

我正在使用自动借记流进行整合。

作为此流程的一部分,需要调用 Paytm 提供的 SENDOTP API 以将 OTP 发送到客户手机。

我使用了从 Paytm 开发者网站获得的代码。

https://developer.paytm.com/docs/send-otp-api/

.Net 代码:

字符串 url = "https://accounts-uat.paytm.com/signin/otp";

Dictionary<String, String> paytmParams = new Dictionary<String, String>();
paytmParams.Add("email", xxxxxxx@xxxxxxx.xxx);
paytmParams.Add("phone", xxxxxxxxxx);
paytmParams.Add("clientId", xxxxxxxx-xxx);
paytmParams.Add("scope", wallet);
paytmParams.Add("responseType", token);
try {
    String postData = "JsonData="+ new JavaScriptSerializer().Serialize(paytmParams);
    HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
    webRequest.Headers.Add("ContentType", "application/json");
    webRequest.Method = "POST";
    using (StreamWriter streamWriter = new StreamWriter(webRequest.GetRequestStream())) {
        streamWriter.Write(postData);
        streamWriter.Flush();
        streamWriter.Close();
    }
    string string responseData = string.Empty;
    using (StreamReader responseReader = new StreamReader(webRequest.GetResponse())) {
        responseData = responseReader.ReadToEnd();
    }
} catch (Exception ex) {
    Response.Write("Exception message: " + ex.Message.ToString());
}

以下是请求格式:

JsonData = {
    "email":"login2kkr@gmail.com",
    "phone":"XXXXXXXXXX",
    "clientId":"merchant-ABC",
    "scope":"Wallet",
    "responseType":"Token"
    }

回复:

{
    "status":"FAILURE",
    "responseCode":"434",
    "message":"Bad Request"
}

问候, 基肖尔。

【问题讨论】:

    标签: c# paytm


    【解决方案1】:

    我已尝试使用以下代码并为我工作。

    string url = "https://accounts.paytm.com/signin/otp";
    
            Dictionary<string, string> paytmParams = new Dictionary<string, string>();
            paytmParams.Add("email", "xxxxxxx@xxxxx.com");
            paytmParams.Add("phone", "xxxxxxxxxxx");
            paytmParams.Add("clientId", "paytm-web-secure");
            paytmParams.Add("scope", "wallet");
            paytmParams.Add("responseType", "token");
    
            try
            {
                string postData = new JavaScriptSerializer().Serialize(paytmParams);
    
                HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
                webRequest.Headers.Add("ContentType", "application/json");
                webRequest.Method = "POST";
    
                using (StreamWriter streamWriter = new StreamWriter(webRequest.GetRequestStream()))
                {
                    streamWriter.Write(postData);
                    streamWriter.Flush();
                    streamWriter.Close();
                }
                string responseData = string.Empty;
                string statusCode = string.Empty;
                string state = string.Empty;
    
                using (StreamReader responseReader = new StreamReader(webRequest.GetResponse().GetResponseStream()))
                {
                    responseData = responseReader.ReadToEnd();
                }
            }
            catch (Exception ex)
            {
                Response.Write("Exception message: " + ex.Message.ToString());
            }
    

    【讨论】:

      猜你喜欢
      • 2021-06-29
      • 2023-04-08
      • 2022-01-04
      • 1970-01-01
      • 2016-05-01
      • 1970-01-01
      • 2018-11-20
      • 2018-10-07
      相关资源
      最近更新 更多