JSON API Proxy

JSON-RPC

Jesse Russel — «JSON-RPC»

Очень полезная вещь — доступ к внешнему API через свой сайт:

location ^~ /externalapi/ {
proxy_pass http://api.external.com/;
}

Запросы можно кэшировать:

proxy_cache_path /tmp/nginx_cache levels=1:2 keys_zone=STATIC:64m inactive=60m max_size=128m;
proxy_cache STATIC;
proxy_cache_valid 200 204 302 1d;

Можно установить таймауты:

proxy_connect_timeout 5;
proxy_read_timeout 5;
proxy_send_timeout 5;

Если сторонний API устанавливает куки, своего клиента можно от них избавить:

proxy_hide_header Set-Cookie;

Можно установить свои заголовки:

proxy_set_header Referer http://mysite.ru/;

Если внешний API требует аутентификации, от своих клиентов ее лучше скрыть:

location ^~ /externalapi/ {
rewrite ^/externalapi/(.*) /api/$1/key/MWyH79LJER8FVAvpn7hu break;
proxy_pass http://api.external.com/;
}

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *