Welcome! Log In Create A New Profile

Advanced

Re: Разбор POST-запросов

Daniel Podolsky
February 08, 2010 11:44AM
> Скажите, пожалуйста, есть ли возможность выделить интересующие аргументы POST-запроса (nginx/0.6.38)?
Можно получить запрос встроенным перлом, и в нем выделить все, что захочется.

В конфиге:
perl_modules /pathToYourModule;
perl_require YourModule.pm;

location = /postHere
{
if ($request_method != POST)
{
error_page 345 = @namedLocationToProcessGET;
return 345;
}
perl YourModule::checkPost;
}

В YourModule.pm
package YourModule;

use nginx;

sub checkPost($)
{
my $r = shift;

if (!$r->has_request_body(\&parsePost))
{
$r->log_error(0, "Post without body, not good");
return 400;
};

return OK;
};

sub parseAuth($)
{
my $r = shift;
my $body = $r->request_body || '';
# Ну и тут уже резвимся, как захотим.
};

Да, возможен вариант, когда тело ляжет в файл. Можно этого не
допускать, регулируя размер буфера и максимальный размер тела. А
можно, наоборот, этого потребовать, и использовать
$r->request_body_file.
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Разбор POST-запросов

Decoy February 08, 2010 10:52AM

Re: Разбор POST-запросов

Daniel Podolsky February 08, 2010 11:44AM

Re: Разбор POST-запросов

Decoy February 09, 2010 04:17AM

Re: Разбор POST-запросов

Daniel Podolsky February 09, 2010 09:20AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 170
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready