是否可以使用API返回的HTML响应重定向页面?我使用的API返回Html,我需要使用此响应进行重定向。 我尝试过使用
window.location.href = response.data
但它没有用。以及API的响应
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="no-store, no-cache, must-revalidate">
<META HTTP-EQUIV="PRAGMA" CONTENT="no-store, no-cache, must-revalidate">
<body onload="document.order.submit()">
<!--body-->
<form name="order" action="https://migs.mastercard.com.au/vpcpay" method="post">
<p> <h2>Please wait.. your payment is processed.........</></p>
<input type="hidden" name="vpc_AccessCode" value=""/><br>
<input type="hidden" name="vpc_Amount" value="00"/><br>
<input type="hidden" name="vpc_Command" value="pay"/><br>
<input type="hidden" name="vpc_Locale" value="en"/><br>
<input type="hidden" name="vpc_Merchant" value=""/><br>
<input type="hidden" name="vpc_ReturnURL" value="/><br>
<input type="hidden" name="vpc_Version" value="1"/><br>
<input type="hidden" name="vpc_card" value="Visa"/><br>
<input type="hidden" name="vpc_gateway" value="ssl"/><br>
<input type="hidden" name="vpc_SecureHash" value="E0989722822D8439C98CC17045A53173405C786CCF5DE5430DC419688A0E9D69"/>
<input
type="hidden" name="vpc_SecureHashType"
value="SHA256">
</form>
</body>
</html>
答案 0 :(得分:0)
您可以像这样替换当前页面的内容:
document.body.innerHTML = response.data;
答案 1 :(得分:0)
根据我对您的问题描述的理解,我不认为重定向是这样做的方法,您可以做以下两件事之一:
1)用新内容替换页面的body标签内容。
document.body.innerHTML = response.data;
2)使用iFrame。请检查此link
答案 2 :(得分:0)
您的服务器可以使用HTTP响应对象使用重定向机制。就像在nodejs中一样
<script>
function myFunction() {
document.body.style.cursor = "url(img/Shovel.png), pointer";
}
function changePage() {
var cursor = document.body.style.cursor;
if (cursor === "url(img/Shovel.png)") {
window.location.href = "Potato1.html";
} else {
window.location.href = "Potato0.html";
}
}
其中res.redirect("/login.html");
是res
响应对象。
但如果您要返回整个HTML,那么
HTTP
不起作用,因为window.location.href = response.data
期望网址不是html内容。
如果要返回HTML内容,另一种方法是使用
替换页面正文window.location.href