Hackerrank API文档解释了如何向其发送POST请求。
然而,“源”和“testcase”参数应该被编码,尽管我不知道具体是如何编码的。我尝试了在每个程序中使用urencode (用PHP),然后用=
和&
字符构建字符串,但是我得到了“400个坏请求”。
UPD --很抱歉忘记了文档页面的链接:http://www.hackerrank.com/api/docs第三个选项卡显示了使用curl的示例。
发布于 2013-12-06 10:59:05
对不起,是我图书馆里发送邮件请求的错误。没有问题,我的代码或hackerrank (它的工作方式类似魅力)。
下面是我的查询构建的示例,在PHP
中
$input = '10 8';
$code = 'print 14';
$url = 'http://api.hackerrank.com/checker/submission.json';
$key = 'somekey|asdfasd|keydata';
$query = array();
$query['source'] = urlencode($code);
$query['testcases'] = urlencode(json_encode(array($input)));
$query['lang'] = 5;
$query['api_key'] = urlencode($key);
$q = array();
foreach ($query as $k => $v) {
$q[] = "$k=$v";
}
$q = implode("&", $q);
现在,$q
可以用作POST请求的数据(对于我来说,http_get_contents是可以的)。
https://stackoverflow.com/questions/20421800
复制相似问题