WKWebView执行Post请求

方法一:
使用js的form表单发送post请求
首先定义js函数的字符串宏

#define KWKWebViewPost_JS @"function wkwebview_post(path, enctype, params) {\
var method = \"POST\";\
var form = document.createElement(\"form\");\
form.setAttribute(\"method\", method);\
form.setAttribute(\"action\", path);\
form.setAttribute(\"enctype\", enctype);\
for(var key in params){\
    if (params.hasOwnProperty(key)) {\
        var hiddenFild = document.createElement(\"input\");\
        hiddenFild.setAttribute(\"type\", \"hidden\");\
        hiddenFild.setAttribute(\"name\", key);\
        hiddenFild.setAttribute(\"value\", params[key]);\
    }\
    form.appendChild(hiddenFild);\
}\
document.body.appendChild(form);\
form.submit();\
}"

执行使用

NSString *jsString = [NSString stringWithFormat:@"%@wkwebview_post(\"%@\", \"%@\", %@)",KWKWebViewPost_JS,@"https://www.baidu.com",@"application/x-www-form-urlencoded",@""];
[webview evaluateJavaScript:jsString completionHandler:nil];
// 测试js的html

  
 
 
菜鸟教程(runoob.com) 



来调用带参数的函数。

方法二:
1.使用原生或AFNetworking发送post请求到服务器
2.获取服务器返回的HTML数据,使用WKWebview加载

你可能感兴趣的:(WKWebView执行Post请求)