Внедрение Cors локально через Lamda и без сервера - PullRequest
0 голосов
/ 03 июля 2019

Я пытаюсь реализовать функциональность cors, используя лямбда и плагин без сервера, но не могу получить ответ или ошибку.

Ниже приведен фрагмент, который я пробовал, но не смог получить ответ

Фрагмент I

module.exports.hello = async (event) => {
  return {
   statusCode: 200,
headers: {
  'Access-Control-Expose-Headers': 'Access-Control-Allow-Origin',
  'Access-Control-Allow-Credentials': true,
  'Content-Type': 'application/json',
  'Access-Control-Allow-Origin': '*',
},
body: JSON.stringify({
  message: 'Go Serverless v1.0! Your function executed successfully!',
  input: event,
}, null, 2),
};
}

Фрагмент II

const middy = require('middy')
const { cors} = require('middy/middlewares')

const originalHandler = (event, context, callback) => {
const response = { statusCode: 200,body: JSON.stringify({
message: 'Go Serverless v1.0! Your function executed successfully!',
input: event,
}, null, 2)};
callback(null, response);
};

const hello = middy(originalHandler)

hello
.use(cors())

 module.exports = { hello }

Фрагмент III

exports.hello = function(event, context, callback) {

const response = {
  statusCode: 200,
  // HERE'S THE CRITICAL PART
  headers: {
    "Access-Control-Allow-Origin" : "*" // Required for CORS support to 
  work
  },
  body: JSON.stringify({ "message": "Hello World!" })
 };

 callback(null, response);
 };

Serverless.yml

functions:
   hello:
   handler: handler.hello
   events: # uncomment these lines
      - http:
        path: hello/get
        method: get
       cors: true
   # adding these two lines
   plugins:
   - serverless-offline

Вот так я запускаю команду

автономный запуск без сервера

При запуске на Postman с использованиемLocalhost Изображение

При запуске на Почтальоне с IP-адресом Изображение

...