...分毫不差
卷曲线:curl https://api.storify.com/v1/stories/storify
从storify生成一个冗长的JSON响应。我试图将其转换为Spring的RestTemplate看起来像这样:
@Test
public void test() {
RestTemplate template = new RestTemplate();
URI uri=URI.create("https://api.storify.com/v1/stories/storify");
ResponseEntity<String> response = template.getForEntity(uri,String.class);
System.out.println("<<<<<<<<<<");
System.out.println(response.getStatusCode()+" "+response.hasBody());
System.out.println("<<<<<<<<<<");
String text = response.getBody();
System.out.println(response.getBody());
System.out.println("<<<<<<<<<<");
}
虽然结果状态代码为200,而hasBody()
为真,但getBody()
并未返回任何内容,只是看似空行。如何使用RestTemplate
?
谢谢, GeePaw
答案 0 :(得分:1)
它对我有用,但是你可以尝试运行以下代码,可能会帮助
var urlList = ['urlA','urlB','urlC',...];
var length = urlList.length;
var currentRequest = 0;
getResponse(urlList[currentRequest]);
function getResponse(theURL){
steps.shuffleLetters({"text": messages[mesInd]});
$.ajax({
method: 'GET',
url: theURL,
dataType: 'text',
success: function (data) {
setTimeout(function(){steps.shuffleLetters({"text": data});}, 1000);
//Here you will call the next request
currentRequest +=1;
if(currentRequest < length)
{
getResponse(urlList[currentRequest]);
}
mesInd = mesInd+1;
},
error: function (data) {
setTimeout(function(){steps.shuffleLetters({"text": "Click Again!"});}, 1000);
mesInd = 0;
}
});
}
此外,如果您支持代理(可能是办公室网络),那么不要忘记将代理详细信息添加到 RestTemplate 。这是添加&#34; 10.1.2.3&#34;的片段。作为端口号的主机。 80
RestTemplate restTemplate = new RestTemplate();
String result = restTemplate.getForObject("https://api.storify.com/v1/stories/storify", String.class);
System.out.println(result);
答案 1 :(得分:0)
我终于得到了这个。感谢Piyush的支持,你让我相信它真的 只是我。
结果:变形虫很好,我的显微镜被破了。该println的输出是一个巨大的单行JSON。我是从Eclipse打印的。 Eclipse控制台不像普通shell那样处理那种事情。我没有输出,因为 Eclipse 没有给我。在shell中运行可以很好地使用这个变体,也可能是我尝试的其他15个变种。 :)
谢谢, GeePaw