Articles of cors

Angular / Node CORS问题

我正在服务器端build立一个节点js的Web应用程序,并在客户端build立angular度。 我正在运行不同的域上的服务器和其他域上的客户端。 我的服务器端代码: var express = require('express'); var app = express(); var http = require("http").createServer(app); var request = require('request'); app.use(function(req, res, next) { console.log(req.headers); res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept, Authorization"); res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE'); next(); }); app.get('/api/hello', function(req, res){ var data = {'message': 'Server is running'} res.jsonp(data); }); http.listen(5000); 和在客户端(Angular)。 angular.controller('myController', function($state, $http){ $http.get('http://localhost:5000/api/hello').success(function(response, status) […]

在Node / Express上启用CORS不起作用

我花了几个小时试图弄清楚这一点… app.use(function(req, res, next) { res.header('Access-Control-Allow-Origin', "*"); res.header('Access-Control-Allow-Methods','GET,PUT,POST,DELETE'); res.header('Access-Control-Allow-Headers', 'Content-Type'); next(); }); app.all('*', function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "X-Requested-With"); next(); }); 没有为我工作…我有这个在我的服务器app.js在需求在顶部之后。 还尝试了npm安装cors和app.use(cors())。 也没有工作。 为什么我会遇到这个问题? 我正在使用快速生成器(npm install express-generator)

如何使用提取与application / json的内容types发布

我有一个响应应用程序,执行一个API的调用,如下所示: postForm(state) { var formData = state.formData; return fetch('http://localhost:3000/api/V0.1/formSubmit', {method: 'POST', headers: {"Content-Type": "application/json"}, body: JSON.stringify(formData)}) .then((response) => response.json()) .then((responseJson) => { console.log(responseJson); return null; }) .catch((error) => { console.error(error); }); } 但是,由于规范指出application / json是非标准内容types,CORS会阻止它。 但是,我不知道如何修改我的获取调用来执行所需的飞行前请求,让它允许application / json。 API调用是: app.post("/api/v0.1/formSubmit", function(req, res) { res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8080'); res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE'); res.setHeader('Access-Control-Allow-Headers', '*'); var […]

Express CORS不起作用

我刚开始使用我的nodejs express模板购买cors不工作。 我用npm install cors –save 这里是文件: var express = require('express'); var cors = require('cors'); var app = express(); app.use(cors()); var corsOptions = { origin: 'https://example.com/', optionsSuccessStatus: 200 }; app.get('/', cors(corsOptions), function(req, res, next) { res.json({ message: 'hooray! welcome to our api!' }); }); app.get('/tt', function(req, res, next) { res.json({ message: 'hooray! welcome to our […]

CORS POST请求返回空主体

正如从这个问题的后续阶段“ 使POST JSON请求从HTML脚本到另一个域中的Node.JS应用程序 ”,我实现了一个CORS POST请求: var request = new XMLHttpRequest(); var params = "parameter=test"; request.open('POST', 'http://localhost:3009/param_upload', true); request.onreadystatechange = function() {if (request.readyState==4) alert("It worked!");}; request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); request.send(params); 这是非常接近互联网的例子。 这是我在我的node.js服务器端的设置: app.use(cors()); var corsOptions = { origin: '*', credentials: true, allowedHeaders: ['*'], optionsSuccessStatus: 200 } 当然,我的app.post函数头里有cors(corsOptions)。 但不知何故身体是空的。 作为要求,我得到了一个很长的回应,里面没有testing文本。 我可能会错过一点,但环顾四周,找不到它。 如果有人帮忙,我会很高兴。

使用CORS与LocomotiveJs Rest API。 适用于本地机器,但不适用于Amazon或Heroku

使用CORS与LocomotiveJs Rest API。 适用于本地机器,但不适用于Amazon或Heroku 我使用LocomotiveJs做了一个REST api,现在我正在试图启用CORS。 我将下面的代码添加到我的“所有”环境(config / environments / all.js)。 this.use(function crossOrigin(req,res,next){ res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "X-Requested-With,Authentication"); res.header("Access-Control-Allow-Methods","GET,POST,PUT,DELETE,OPTIONS"); return next(); }); 它在我的本地机器上工作,但是当我部署到Heroku或AWS时,我得到一个404 Http错误,当客户端发送OPTIONS命令。 为了隔离问题,我开发了一个简单的Express应用程序,使用下面的代码: var express = require('express'); var app = express(); app.all('*', function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header("Access-Control-Allow-Headers", "X-Requested-With,Authentication"); next(); }); app.get('/test', function(req, res){ res.set('Content-Type', 'application/json'); res.send({ 'Hello' : 'World' }); }); var […]

CORS的“Access-Control-Allow-Origin”值如何暴露给浏览器?

在Node.js中,我理解在响应头中发送“Access-Control-Allow-Origin”值的语法,但是我很困惑这个值在服务器处理之前如何暴露给浏览器,因为响应头是稍后决定的,所以在处理请求之后,何时实际发送响应。 例如,用Express: /* Server */ var express = require('express'); var bodyParser = require('body-parser'); var app = express(); app.use(bodyParser.json()); app.post('/login', function (req, res) { var username = req.body.username; var password = req.body.password; if (username !== "undefined"){ respondSuccess(req,res); } else { respondFailure(req,res); } }); app.listen(2222); 这里,不pipe是否存在“Access-Control-Allow-Origin”头,都取决于用户名未定义的结果。 function respondSuccess(){ body = "Success!"; res.writeHead(200, { 'Access-Control-Allow-Origin' : '*', 'Content-Length' […]

使用CORS仍然会产生交叉原点错误

我试图通过使用cors模块angular$http访问节点路由。 我试过一个简单的 app.use(cors()); 但仍然得到错误。 我已经尝试从cors文档中添加一个URL白名单 var corsOptions = { origin: function(origin, callback){ var originIsWhitelisted = whitelist.indexOf(origin) !== -1; callback(null, originIsWhitelisted); } }; app.get('/someroute/:someparam/', cors(corsOptions), function(req, res, next){ mymodule.getData(req.params.someparam, function(err, data){ if (err){ console.log('error with route', err); }else{ res.json({result: data}); } }); }); 但是我仍然得到错误 XMLHttpRequest无法加载localhost:8888 / someroute / undefined。 协议scheme仅支持跨源请求:http,data,chrome,chrome-extension,https,chrome-extension-resource。 我以为使用Cors模块是为了避免这个问题。 我该如何解决?

Javascript和angularjs使用CORS

我试图从使用$ http的网站获取信息,并且我诚实地查看了所有的东西,并且尝试了很多不同的东西,但我不确定如何设置“Access-Control-Allow-Origin” 。 我不确定我是否完全是误解,但是任何帮助真的很感谢,谢谢提前一吨! XMLHttpRequest无法加载http://nhlwc.cdnak.neulion.com/fs1/nhl/league/teamroster/NJD/iphone/cbrbroster.json 。 请求的资源上没有“Access-Control-Allow-Origin”标题。 原因' http:// localhost:3000 '因此不被允许访问。 该响应具有HTTP状态码503。 这是我的代码: 来自rosterService的相关代码: (function(){ 'use strict'; var URL = 'http://nhlwc.cdnak.neulion.com/fs1/nhl/league/teamroster/NJD/iphone/clubroster.json'; angular .module("DevilsFanApp") .factory("RosterService", RosterService); function RosterService($rootScope, $http) { function fetchPlayers(callback){ return $http({ method: 'GET', url: URL, dataType: 'jsonp' }); } } })(); server.js: var express = require('express'); var app = express(); var ipaddress = […]

只是不能解决CORS问题

我只是不能打电话给我全function的API,因为我不断收到这个错误 – angular.js:9827 **OPTIONS http://xyz.mybluemix.net/add_user** (anonymous function) @ angular.js:9827sendReq @ angular.js:9628serverRequest @ angular.js:9344processQueue @ angular.js:13189(anonymous function) @ angular.js:13205Scope.$eval @ angular.js:14401Scope.$digest @ angular.js:14217Scope.$apply @ angular.js:14506(anonymous function) @ angular.js:16232completeOutstandingRequest @ angular.js:4905(anonymous function) @ angular.js:5285 welcome.html:1 **XMLHttpRequest cannot load http://xyz.mybluemix.net/add_user. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. […]