Android PayTm多功能一体Sdk-支付成功后出现网页不可用等错误-回调url错误
完整错误消息为: 无法加载处的网页,因为:net::ERR\u CONNECTION\u TIME\u OUT 启动paytm并在应用程序调用中获得相同错误的我的代码:Android PayTm多功能一体Sdk-支付成功后出现网页不可用等错误-回调url错误,android,payment-gateway,paytm,Android,Payment Gateway,Paytm,完整错误消息为: 无法加载处的网页,因为:net::ERR\u CONNECTION\u TIME\u OUT 启动paytm并在应用程序调用中获得相同错误的我的代码: private void startPayTMCall(InitiateAPIResponse apiResponse, PaytmInitRequestBody paytmInitRequestBody) { String orderIdString = paytmInitRequestBody.getOr
private void startPayTMCall(InitiateAPIResponse apiResponse, PaytmInitRequestBody paytmInitRequestBody) {
String orderIdString = paytmInitRequestBody.getOrderId();
String MID = getString(R.string.MID);
String amount = String.valueOf(paytmInitRequestBody.getAmount());
/*
On completion of transaction, Paytm payment gateway will send the response on this URL. This can be a static response URL as mentioned below:
Staging Environment: "https://securegw-stage.paytm.in/theia/paytmCallback?ORDER_ID=<order_id>"
Production Environment: "https://securegw.paytm.in/theia/paytmCallback?ORDER_ID=<order_id>"*/
// for test mode use it
// String host = "https://securegw-stage.paytm.in/";
// for production mode use it
String host = "https://securegw.paytm.in/";
String callBackUrl = host + "theia/paytmCallback?ORDER_ID=" + orderIdString;
PaytmOrder order = new PaytmOrder(orderIdString, MID, apiResponse.getBody().getTxnToken(), amount, callBackUrl);
TransactionManager transactionManager = new TransactionManager(order, new PaytmPaymentTransactionCallback() {
@Override
public void onTransactionResponse(Bundle bundle) {
Toast.makeText(getApplicationContext(), "Payment Transaction response " + bundle.toString(), Toast.LENGTH_LONG).show();
}
@Override
public void networkNotAvailable() {
Toast.makeText(MainActivity.this, "networkNotAvailable", Toast.LENGTH_SHORT).show();
}
@Override
public void onErrorProceed(String s) {
Toast.makeText(MainActivity.this, "onErrorProceed "+s, Toast.LENGTH_SHORT).show();
}
@Override
public void clientAuthenticationFailed(String s) {
Toast.makeText(MainActivity.this, "clientAuthenticationFailed : "+s, Toast.LENGTH_SHORT).show();
}
@Override
public void someUIErrorOccurred(String s) {
Toast.makeText(MainActivity.this, "someUIErrorOccurred : "+s, Toast.LENGTH_SHORT).show();
}
@Override
public void onErrorLoadingWebPage(int i, String s, String s1) {
Toast.makeText(MainActivity.this, "onErrorLoadingWebPage : "+s+" : "+s1, Toast.LENGTH_SHORT).show();
}
@Override
public void onBackPressedCancelTransaction() {
Toast.makeText(MainActivity.this, "onBackPressedCancelTransaction : ", Toast.LENGTH_SHORT).show();
}
@Override
public void onTransactionCancel(String s, Bundle bundle) {
Toast.makeText(MainActivity.this, "onTransactionCancel : "+s, Toast.LENGTH_SHORT).show();
}
});
transactionManager.setAppInvokeEnabled(false);
transactionManager.setEnableAssist(true);
transactionManager.startTransaction(this, REQ_CODE_ORDER);
}
private void startPayTMCall(InitiateAppResponse apiResponse,PaytmInitRequestBody PaytmInitRequestBody){
字符串orderIdString=paytmInitRequestBody.getOrderId();
String MID=getString(R.String.MID);
String amount=String.valueOf(paytmInitRequestBody.getAmount());
/*
交易完成后,Paytm支付网关将在此URL上发送响应。这可以是静态响应URL,如下所述:
登台环境:“https://securegw-stage.paytm.in/theia/paytmCallback?ORDER_ID="
生产环境:“https://securegw.paytm.in/theia/paytmCallback?ORDER_ID="*/
//对于测试模式,请使用它
//字符串主机=”https://securegw-stage.paytm.in/";
//对于生产模式,请使用它
字符串主机=”https://securegw.paytm.in/";
字符串callBackUrl=host+“theia/paytmCallback?ORDER_ID=“+orderIdString;
PaytmOrder=新的PaytmOrder(orderIdString、MID、apiResponse.getBody().getXntoken()、amount、callBackUrl);
TransactionManager TransactionManager=new TransactionManager(订单,new PaytmPaymentTransactionCallback(){
@凌驾
公共无效onTransactionResponse(捆绑包){
Toast.makeText(getApplicationContext(),“支付交易响应”+bundle.toString(),Toast.LENGTH_LONG).show();
}
@凌驾
public void networkNotAvailable(){
Toast.makeText(MainActivity.this,“networkNotAvailable”,Toast.LENGTH\u SHORT.show();
}
@凌驾
公共void(字符串s){
Toast.makeText(MainActivity.this,“onerrorProcessing”+s,Toast.LENGTH_SHORT.show();
}
@凌驾
public void clientAuthenticationFailed(字符串s){
Toast.makeText(MainActivity.this,“clientAuthenticationFailed:+s,Toast.LENGTH_SHORT).show();
}
@凌驾
出现公共void someuierror(字符串s){
Toast.makeText(MainActivity.this,“someUIErrorOccessed:+s,Toast.LENGTH_SHORT).show();
}
@凌驾
public void onerrorloading网页(int i、字符串s、字符串s1){
Toast.makeText(MainActivity.this,“OneErrorLoadingWebpage:”+s+:“+s1,Toast.LENGTH_SHORT).show();
}
@凌驾
BackpressedCancelTransaction()上的公共无效{
Toast.makeText(MainActivity.this,“onBackPressedCancelTransaction:”,Toast.LENGTH\u SHORT.show();
}
@凌驾
public void onTransactionCancel(字符串s,Bundle){
Toast.makeText(MainActivity.this,“onTransactionCancel:+s,Toast.LENGTH_SHORT).show();
}
});
transactionManager.setAppInvokeeEnabled(false);
transactionManager.setEnableAssist(true);
transactionManager.startTransaction(这是请求代码订单);
}
我认为回调url中存在问题,tht可能会出现,但我遵循paytm官方的一体式SDK文档请在“Initiate Transaction API”的“callbackUrl”请求参数中使用Paytm静态回调URL。上面提到的URL(merchant.com/callback)只是一个例子,您可以使用自定义的回拨URL,也可以使用下面提到的回拨URL Paytm静态回调URL-> 登台:
生产:是否复制粘贴编码?那个回调url不是应该指向你的后端吗?你有任何例子或博客参考吗,我正在学习paytm支付网关,文档不是很清楚。我也从我的PHP后端生成了令牌。是的,你说得对,那是我的小错误。。但我发现。。反复检查我的代码。。