Re: Perl client: Cannot combine params and body?
I forgot to mention that; it's commented out because the service I'm attempting to access refuses POST requests. I've been informed that this is a sort of low-hanging fruit security measure to prevent mutating methods. On Wednesday, January 21, 2015 at 1:17:07 PM UTC-5, Clinton Gormley wrote: Hi Andrew The code looks correct. You have send_get_body_as POST commented out - I'm guessing that is the problem. Probably the service you're using does not allow GET requests with bodies. I'd uncomment that and try again. Ping me on https://github.com/elasticsearch/elasticsearch-perl/issues if you still can't get it working clint -- You received this message because you are subscribed to the Google Groups elasticsearch group. To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/7c649cb3-f934-4f74-bc74-bf5eedf22bb7%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Perl client: Cannot combine params and body?
Hi Andrew The code looks correct. You have send_get_body_as POST commented out - I'm guessing that is the problem. Probably the service you're using does not allow GET requests with bodies. I'd uncomment that and try again. Ping me on https://github.com/elasticsearch/elasticsearch-perl/issues if you still can't get it working clint -- You received this message because you are subscribed to the Google Groups elasticsearch group. To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAPt3XKTabrFBQ992PgupZENM%3DeeFhmr%3D%3DS0Kvz5byk93DK-uEw%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
Re: Perl client: Cannot combine params and body?
I have submitted an issue. Thanks for your attention! On Wednesday, January 21, 2015 at 1:41:39 PM UTC-5, Andrew Walker wrote: I forgot to mention that; it's commented out because the service I'm attempting to access refuses POST requests. I've been informed that this is a sort of low-hanging fruit security measure to prevent mutating methods. On Wednesday, January 21, 2015 at 1:17:07 PM UTC-5, Clinton Gormley wrote: Hi Andrew The code looks correct. You have send_get_body_as POST commented out - I'm guessing that is the problem. Probably the service you're using does not allow GET requests with bodies. I'd uncomment that and try again. Ping me on https://github.com/elasticsearch/elasticsearch-perl/issues if you still can't get it working clint -- You received this message because you are subscribed to the Google Groups elasticsearch group. To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/9be4fff4-537a-4370-9427-1ac903af18a4%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
Re: Perl client: Cannot combine params and body?
Is there another mailing list I should be using, perhaps? I have still found no solution to this problem. On Thursday, January 15, 2015 at 3:44:11 PM UTC-5, Andrew Walker wrote: I have a remote node that I am attempting to connect to that requires an api key as a URL parameter in addition to the body in order to get it to work. The code is as follows: #!/usr/bin/perl use v5.14; use warnings; use Search::Elasticsearch; use Data::Dumper; my $API_KEY='API_KEY'; my $ES = Search::Elasticsearch-new( cxn_pool = 'Static::NoPing', nodes = [{ scheme = 'https', host = 'service.host.com', port = 443, path = '/api/es/a_path', }], #send_get_body_as = 'POST', trace_to = 'Stdout', log_to = 'Stdout', ); my $res = $ES-search( params = { api_key = $API_KEY, }, body= { query = { bool = { must = { query_string = { default_field = _all, query = thisisasitethatdoesntexist.com, default_operator = AND } } } } } ); print Dumper($res); The generated curl is: # Request to: https://service.host.com:443/api/es/a_path curl -XGET 'http://localhost:9200/_search?api_key=API_KEYpretty=1' -d ' { query : { bool : { must : { query_string : { query : thisisasitethatdoesntexist.com, default_field : _all, default_operator : AND } } } } } ' When I replace localhost and the path with the proper host and path and run the curl command directly from the command line, I get zero hits back, which is what I expect. If I run the above perl, however, I get many millions of results back, which is exactly the same as what I get when I remove the body from the curl query (-d ''). So it seems that the combination of params and body causes body to get eaten? I looked at the code, but I couldn't find where this might be happening. Any help? -- You received this message because you are subscribed to the Google Groups elasticsearch group. To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/305579f6-9b50-4d0b-a678-510400cdd78e%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.