JS-API
IDEPY框架预定义了一JS-API拓展功能,可通过以下方式导入并使用。
python调用相关方法
from idepy.core import API
# 主窗口通讯API
class MainWindow(API)
def test(self):
print(self.web_data)
# 获取当前窗口对象
super()._window()
JavaScript调用相关方法
// html内相关事件也可以通过该方法调用。
api.iglobal_window_close()
// 通过pywebview自身对象调用
pywebview.api.iglobal_window_close()
html调用相关方法
// 直接通过api、idepy调用
<a class="text-primary " onclick="api.check_verity()">刷新信息</a>
// vue调用
<a class="text-primary " @click="api.check_verity()">刷新信息</a>
API
预定义了一批功能函数,并将部分内容暴漏给网页,JS可通过api.xxx或idepy.api.xxx调用相关方法。
使用_前缀预定义的函数,仅支持python自身调用。
get_config_data
获取配置数据
get_data
获取页面数据
set_data
设置页面数据
iglobal_proxy_request_get
用python代理请求特定内容,并将结果返回给JS
url: 请求的链接
params: 请求的参数
headers: 请求头
cookies: 使用的cookie
timeout: 超时时间,默认为60s
return {"status": 请求状态码, "data": 数据}
iglobal_proxy_request_post
用python代理请求特定内容,并将结果返回给JS
url: 请求的链接
request_data: 请求的数据
headers: 请求头
cookies: 使用的cookie
timeout: 超时时间,默认为60s
return {"status": 请求状态码, "data": 数据}
iglobal_proxy_request_json
用python代理请求特定内容,使用JSON数据格式请求,并将结果返回给JS
url: 请求的链接
request_data: 请求的数据
headers: 请求头
cookies: 使用的cookie
timeout: 超时时间,默认为60s
return {"status": 请求状态码, "data": 数据}
iglobal_window_close
关闭当前窗口对象
iglobal_window_minimize
最小化当前窗口
iglobal_window_maximize
最大化当前窗口
iglobal_window_hide
隐藏当前窗口
iglobal_window_show
显示当前窗口
iglobal_clear_cookies
清理cookie
提示
后面的方法只能由python调用
_refresh_config_data
更新配置数据到网页。
_refresh_web_data
更新self.web_data数据到网页。
_update_data
更新self.web_data的特定数据,并刷新。
key: 更新数据的键
value: 更新数据的值
refresh: 立即刷新网页数据。
_window
返回当前窗口对象。