Heim > Fragen und Antworten > Hauptteil
Ich habe eine API wie http://XXX/test, die nur POST-Anfragen unterstützt. Sie müssen Parameter wie die folgenden übergeben, um die Ergebnisse zu erhalten.
{
"id": "12",
"userInfo": {
"name": "amy",
"age": "13"
},
"map":[
{
"fieldName": "AA",
"mapName": "AAA"
},
{
"fieldName": "BB",
"mapName": "BBB"
}
]
}
Da diese API eine HTML-Seite zurückgibt, wird sie mithilfe eines Iframes implementiert. Wenn es sich ursprünglich um eine GET-Anfrage handelte, legen Sie einfach die Quelle des Iframes auf diese API fest. Diese API unterstützt jedoch nur POST-Anfragen Ich habe nach Lösungen gesucht und festgestellt, dass diese Funktion in Form eines Formulars implementiert werden kann. Der Code ähnelt dem folgenden.
<form
id="moodleform" target="iframe"
method="post" action="http://www.example.com/login/index.php"
>
<input type="hidden" name="username" value="guest"/>
<input type="hidden" name="password" value="guest"/>
<input type="hidden" name="testcookies" value="1"/>
</form>
<iframe name="iframe"></iframe>
<script type="text/javascript">
document.getElementById('moodleform').submit();
</script>
Aber wie übergibt man hier die Parameter im Formular? Die Parameter, die ich übergeben möchte, sind keine einfachen Schlüsselwertzuordnungen. Was soll ich tun?
PHP中文网2017-05-19 10:48:28
表单传参只支持key-value的形式。老老实实用ajax,如果跨域了,接口不支持跨域的,那就只能后端处理下,如果返回的html觉得麻烦,那就把html文本设为iframe的内容。然后dom查询就好了