java 检查ssn_无法更新条带自定义帐户以验证legal.entity.ssn_last_4

我一直在绞尽脑汁试图找出为什么这个POST请求一直返回500状态消息 . 我还将包含我的app.js和请求来自的Swift代码 . 如果有任何其他信息,请告诉我 .

Frontend Language: Swift

Backend Language: Node.js

Purpose: Verifying Stripe Custom Account with ssn_last_4

Frontend request; User fills out ssn_last_4 from textfield in ViewController

@IBAction func saveLast4(_ sender: Any) {

let ssn = ssnLast4.text

let last4Info = ["ssn_last_4": ssn as Any] as [String:Any]

self.passLast4(last4Info: last4Info)

}

func passLast4(last4Info: Dictionary)

{

let ssnURL = URL(string: "http://myWebsite:3000/payment/add-SSN")!

var request = URLRequest(url: ssnURL)

let userJSON = try! JSONSerialization.data(withJSONObject: last4Info, options: .prettyPrinted)

let userJSONInfo = NSString(data: userJSON, encoding: String.Encoding.utf8.rawValue)! as String

request.httpBody = "last4Info=\(userJSONInfo)".data(using: String.Encoding.utf8)

request.httpMethod = "POST" // POST method.

URLSession.shared.dataTask(with: request) { (data, response, error) -> Void in

if (error != nil){ // error handling responses.

print ("An error has occured.")

}

else{

print ("Success!")

}

}.resume()

}

Backend POST Request in users.js:

router.post("/add-SSN", function (req,res) {

console.log('add-SSN', req.body);

var userInfo = req.body.userInfo;

var userJSON = JSON.parse(userInfo);

var userID = userJSON['userID'];

var last4Info = req.body.last4Info;

var last4JSONInfo = JSON.parse(last4Info);

var ssn_last_4 = last4JSONInfo['ssn'];

db.one(`select \"Users\".\"stripeAccountID\" from database.\"Users\" where \"Users\".\"userID\" ='${userID}'`)

.then(function(data) {

console.log('user stripeID', data.stripeAccountID);

stripe.accounts.update({

legal_entity: {

ssn_last_4: ssn_last_4

}

})

res.status(200).json({

status: 'Success',

data: data,

message: 'Stored ssn last 4.'

})

.catch(function(err){

console.log(err);

})

})

})

我在users.js文件中注意到的一件事是 console.log('add-SSN, req.body); 返回: add-SSN { last4Info: '{\n "ssn_last_4" : "1111"\n}' } . 所以看起来数据有点落到了后端,但我的POST中的某些内容必须关闭?

app.js:

var express = require('express');

var path = require('path');

var logger = require('morgan');

var bodyParser = require('body-parser');

var admin = require('firebase-admin');

var index = require('./routes/index');

var router = express.Router();

var serviceAccount = require('serviceAccount');

var app = express();

app.use(bodyParser.urlencoded({

extended: true

}));

app.use(bodyParser.json());

admin.initializeApp({

credential: admin.credential.cert(serviceAccount),

databaseURL: 'dbURL'

});

var users = require('./routes/users');

app.set('views', path.join(__dirname, 'views'));

app.set('view engine', 'hbs');

app.use(logger('dev'));

app.use(bodyParser.json());

app.use(bodyParser.urlencoded({ extended: false }));

app.use(express.static(path.join(__dirname, 'public')));

app.use('/', index);

app.use('/users', users);

// catch 404 and forward to error handler

app.use(function(req, res, next) {

var err = new Error('Not Found');

err.status = 404;

next(err);

});

// error handler

app.use(function(err, req, res, next) {

// set locals, only providing error in development

res.locals.message = err.message;

res.locals.error = req.app.get('env') === 'development' ? err : {};

// render the error page

res.status(err.status || 500);

res.render('error');

});

module.exports = app;

我想我已经探索了我能找到/想到的每一个选择 . 我尝试从 users.js 文件中删除 bodyParser ,或尝试将其直接添加到每个POST请求中 .

每次,我的控制台返回500状态 .

如果你看到我可能做错了什么,请告诉我!

提前感谢您的帮助

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值