代码实现学历自动认证,App自动获取学历详细信息

编程入门 行业动态 更新时间:2024-10-22 02:53:54

代码实现<a href=https://www.elefans.com/category/jswz/34/1767203.html style=学历自动认证,App自动获取学历详细信息"/>

代码实现学历自动认证,App自动获取学历详细信息

功能概述

学信网没有开放公共的学历认证api,那App要实现学历的自动认证改怎么做呢?
下面就详细介绍App通过代码实现学习自动完成,用户输入证书编号,可以获取学历的详细信息,包括学校名称、学历(专科/本科/硕士)、学习形式(全日制/非全日制)、专业等。

效果图如下:

实现代码

思路:

App跳转学信网学历认证的链接,学历查询在学信网那边完成,包括输入姓名和证书编号,查询成功后学信网会跳转到查询结果界面,App原生壳子webview需要监听页面加载,如果是学信网查询结果的页面,则通过webview查询页面元素(通过调用js的样式标签查询),可以获得查询结果页面的所有学历数据。

学信网学历查询链接

.do

下面以安卓具体具体代码,iOS实现类似。App上点击学历认证按钮,跳转上面链接,

1.webView添加H5交互事件监听

webView.addJavascriptInterface(new InJavaScriptLocalObj(), "inter_education");public final class InJavaScriptLocalObj {@JavascriptInterfacepublic void showEducationResult(String str) {//str格式如下:王某某,北京大学,普通全日制,本科,105******26LogUtil.e(TAG,"showDescription:"+str);String[] split = str.split(",");if (split.length>=5){final String name = split[0];final String school = split[1];final String learningFormat = split[2];final String degree = split[3];final String degreeNo = split[4];LogUtil.e(TAG,"姓名:"+name+",学校:"+school+",学习形式:"+learningFormat+",学历:"+degree+",证书编号:"+degreeNo);//查询成功,然后做个用户授权的弹框,授权同意后,根据具体的业务会更新用户学历}}}

2.页面加载完成后调用查询方法

webView.setWebViewClient(new BridgeWebViewClient(bridgeWebView){@Overridepublic void onPageFinished(WebView view, String url) {super.onPageFinished(view, url);//学历查询的URL: .do?rndid=ssdmhpx6t***odq7a6g49rif (url.contains("xlcx/lscx/xlresult.do")){ //包含这个的就是查询结果页面//原生调用H5里的方法webView.loadUrl("javascript:window.inter_education.showEducationResult("+ "document.getElementsByClassName('col-right')[0].innerText+','+"+ "document.getElementsByClassName('col-right')[5].innerText+','+"+ "document.getElementsByClassName('col-right')[9].innerText+','+"+ "document.getElementsByClassName('col-right')[10].innerText+','+"+"document.getElementsByClassName('col-right')[13].innerText"+ ");");}}@Overridepublic void onPageStarted(WebView view, String url, Bitmap favicon) {super.onPageStarted(view, url, favicon);LogUtil.e(TAG,"onPageStarted:"+url);}});

代码就这么多,其实实现很简单,就是原生webview来查看H5页面的数据,查到后原生拿到数据,做后续操作。

说明:
安卓和iOS可以用这种方式实现学历的自动认证,不过纯H5页面不行,尝试过H5页面嵌套iframe的方式,再监听iframe里的数据,不过学信网里应该对iframe嵌套做了限制,查询成功跳转到结果页面时报错,有前端的大神可以尝试下,如果成功欢迎留言。我放出H5的尝试的代码:

<!DOCTYPE html>
<html style="height: 100%;">
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><title></title><script>window.onload = function () {var array = document.getElementsByClassName("col-right");if (array.length>5) {var result = array[0].innerText+","+array[5].innerText+","+array[9].innerText+","+array[10].innerText+","+array[13].innerText;console.log(result);alert("认证成功:"+result);}}</script></head>
<body style="height: 100%;"><iframe src=".do" id="iframeId" style="width:100%;height: 100%;"></iframe>
</body>
</html>

demo源码:

如有问题可以留言,或者去下面SDK官网,官网有个人联系方式。


轻量级LightSDK和客服系统,免费一键接入,感兴趣的小伙伴可以看看。
LightSDK官网地址

/

更多推荐

代码实现学历自动认证,App自动获取学历详细信息

本文发布于:2024-02-12 03:36:10,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1685670.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:学历   详细信息   代码   App

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!