Используйте сценарий nginx LUA для определения ключа API в заголовке - PullRequest
0 голосов
/ 01 февраля 2019

Я пытаюсь написать небольшой скрипт LUA, чтобы определить, приходит ли запрос с правильным ключом API.Если нет, откажитесь от запроса;если это так, запишите в запрос другой пользовательский заголовок, чтобы вышестоящий сервер мог обработать этот запрос.

Я получил общую идею, написанную в сценарии, но я не вижу, как она работает - в результате запроса нет пользовательского заголовка, в который следует записать.Что я делаю не так?

local piq_header = "x-api-key"
local authenticated_header = "x-authenticated"

local valid_piq_api_keys = {
  ["a_long_random_string"] = "client1"
}

-- check if api key request header is set
if ngx.header[piq_header] then
  local api_key = ngx.header[piq_header]
  -- check if api key is valid
  if valid_piq_api_keys[api_key] then
    local retailer = valid_piq_api_keys[api_key]
    ngx.header.authenticated_header = customer
    return
  else
    ngx.exit(ngx.HTTP_FORBIDDEN)
  end
else
  ngx.header.authenticated_header = nil;
  return
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...