У меня есть веб-приложение RESTAPI с конечными точками API, такими как
/ api / 1 / help? User =
/ api / 1 / test? User =
Мое приложение работает на https://mytest -web.azurewebsites.net ;
У меня есть шлюз nginx, поэтому пользователи могут использовать конечные точки API с https://mytestapi.com/api/1/help?user= который будет использован на https://mytest -web.azurewebsites.net / api / 1 / help? user =
У меня есть два правила перезаписи nginx.Эти два в конечном итоге перепишут в одни и те же конечные точки API со всеми параметрами запроса.Но только один перенаправляет все параметры запроса на мой веб-сайт RESTAPI
Первый Рабочий, который передает все параметры строки запроса после перезаписи.
location ~* ^/(api|api2)/ {
set $myhost $host;
#add some more extra header for api processing
add_header x-userlocaction $myhost;
proxy_set_header x-userlocaction $myhost;
rewrite ^(.*)$ $1 break;
add_header X-debug-message "GENERIC API $1" always;
proxy_pass https://mytest-web.azurewebsites.net;
}
Не работает У меня есть еще одна перезапись nginx для моих поставщиков.Но этот не передает параметры строки запроса.
location /vendorapi/ {
add_header X-debug-message "vendor API SPECIFIC $1" always;
rewrite ^/vendorapi/(.*)$ /api/$1 break;
proxy_pass https://mytest-web.azurewebsites.net;
}
Я должен позволить своему поставщику использовать API с
/ vendorapi / 1/ help? user =
Что не так со вторым правилом перезаписи?
Почему параметры строки запроса не передаются?
Чем первый отличается от второго?