有 2 个 Rails 应用程序:接收请求的 API 应用程序和发送请求的客户端应用程序。
对于来自客户端应用程序的 GET 请求,我已将这些行添加到 API 应用程序的应用程序控制器中:
headers['Access-Control-Allow-Origin'] = '*'
headers["Access-Control-Allow-Methods"] = 'GET, PUT, POST, DELETE'
headers['Access-Control-Request-Method'] = '*'
所以 GET 请求工作得很好。
但是任何其他请求,例如 POST、UPDATE、DELETE 等都不起作用。
我尝试将 CSRF-token 添加到客户端应用程序中的隐藏表单行中,以将其设置为客户端应用程序布局:
$.ajaxSetup({
type: 'POST',
headers: { 'X-CSRF-Token': $('meta[name="csrf-token"]').attr('content') },
dataType: 'json'
});
但这对我没有帮助。
PS:<%= csrf_token_tags %> 正在布局中。