我有一个测试 api 应用程序,我正在使用它在控制器中使用不同的操作。但我无法正确实施。
这个控制器没有模型。它只是将控制权委托给某些服务。我无法将发布数据发送到操作。
class SimplexController < ApplicationController
def initiate_request
response = SimplexServices.new.initiate_request simplex_params
render json: response
end
def update_kyc
response = SimplexServices.new.initiate_kyc update_kyc_params
render json: response
end
private
def simplex_params
params.permit!
end
def update_kyc_params
params.permit!
end
end
对于initial_request ,我在正文中有一个帖子数据,如下所示
{
"account_details": {
"logins": [
{
"id": "200",
"ip": "192.117.97.229",
"uaid": "c387c6q6sr27csbuftfvq9v652",
"timestamp": "2017-06-18T11:20:25Z",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36",
"is_api_initiated": false,
"http_accept_language": "en-US,en;q=0.8,he;q=0.6"
}
],
"is_2fa_enabled": false,
"partner_end_user_id": "246915",
"identity_kyc_details": {
"last_name": "Durden",
"first_name": "Tyler",
"document_id": "AB7654321"
},
"last_kyc_verification_timestamp": "2015-12-31T16:03:47Z"
},
"personal_details": {
"email": "tylerdurden@paperstsoap.com",
"phone": "+12885550153",
"gender": "m",
"address": {
"zip": "19808",
"city": "Bradford",
"country": "US",
"state": "DE",
"address_line_1": "537 Paper street"
},
"last_name": "Durden",
"first_name": "Tyler",
"middle_name": "",
"date_of_birth_ts": "1972-02-22T12:00:00Z"
},
"transaction_details": {
"last_20_txs": [],
"current_balance": {
"amount": 0,
"currency": "usd"
},
"payment_details": {
"order_id": "PRTNR135791",
"payment_id": "E98986D8-03C0-D777-07CD-C56496E2F266",
"fiat_total_amount": {
"amount": 1433.25,
"currency": "usd"
},
"payment_flow_type": "deposit",
"destination_wallet": {
"address": "16M8D1ZgkWjziw8BaJDT4w1uBF4whfG7mW",
"currency": "btc"
}
}
}
}
下面的update_kyc是发布请求
{
"documents": [
{
"document_type_id": "1",
"document_number": "doc123"
},
{
"document_type_id": "2",
"document_number": "doc456"
}
]
}
我将如何在我的控制器中允许这样做?
现在我允许一切使用下面的代码。但允许一切都是不好的。
private
def simplex_params
params.permit!
end
我必须如何在控制器中实现这种情况?
谢谢, 阿吉斯