У меня есть сторонняя конечная точка JSON, которая не поддерживает CORS, я был сформирован, мое приложение должно проксировать запрос через сервер. Я исследовал это в течение нескольких часов сегодня, и я не вижу простого решения (пара сложных ...).Как использовать сервер узла Meteor JS для прокси-сервера стороннего запроса ajax
Так что в основном мне нужно сделать что-то вроде request('http://localhost:3000/publications/jsonProxy')
, которое вызывает сервер Meteor. Тогда мне нужна публикация, которая запрашивает данные у третьей стороны с помощью защищенного токена, и мне нужно вернуть эти данные в браузер.
Я пытался что-то вроде:
const request = require('request');
if (Meteor.isServer) {
Meteor.publish('jsonProxy', function jsonProxyPublication() {
var options = {
url: 'https://somewhere.com/api/endpoint',
headers: {
'API-Key': '123'
}
};
function callback(error, response, body) {
if (!error && response.statusCode == 200) {
let info = JSON.parse(body);
console.log(info);
return info
} else {
console.error(error, response)
}
}
request(options, callback);
return this.ready()
});
}
Тогда: curl localhost:3000/publications/jsonProxy
. Это может быть не так близко к правильному способу сделать это, я как бы потерян.
Кажется достаточно простым, может ли кто-нибудь указать мне правильный способ вернуть эти данные в браузер?
Обновление - я понял это и опубликую в ближайшее время – BradGreens