该接口用来执行 Byzer-lang 语句。

Method: POST GET

Content-Type: application/x-www-form-urlencoded

参数列表

参数说明示例值
sql需要执行的 Byzer-lang 内容 
owner当前发起请求的租户 
jobType任务类型 script/stream/sql 默认script 
executeMode如果是执行 Byzer-lang 则为 query, 如果是为了解析 Byzer-lang 则为 analyze。很多插件会提供对应的 executeMode 从而使得用户可以通过 HTTP 接口访问插件功能 
jobName任务名称,一般用 uuid 或者脚本 id ,最好能带上一些信息,方便更好的查看任务 
timeout任务执行的超时时间单位毫秒
silence最后一条SQL是否执行默认为 false
sessionPerUser按用户创建 sesison默认为 true
sessionPerRequest按请求创建 sesison默认为 false,一般如果是调度请求,务必要将这个值设置为true
async请求是不是异步执行默认为 false
callback如果是异步执行,需要设置回调URL 
callbackHeader如果是异步执行,在回调中增加 header 的设置值为一个 json string,定义了 http header 的 key 和 value,如 {"Authorization":"Bear xxxxx"}
skipInclude禁止使用 include 语法默认false
skipAuth禁止权限验证默认true
skipGrammarValidate跳过语法验证默认true
includeSchema返回的结果是否包含单独的 schema 信息默认false
fetchTypetake/collect, take 在查看表数据的时候非常快默认collect
defaultPathPrefix所有用户主目录的基础目录 
context.__default__include_fetch_url__Byzer-lang Engine 获取 include 脚本的地址 
context.__default__fileserver_url__下载文件服务器地址,一般默认也是 Notebook 地址 
context.__default__fileserver_upload_url__上传文件服务器地址,一般默认也是 Notebook 地址 
context.__auth_client__权限认证客户端的类默认是streaming.dsl.auth.meta.client.MLSQLConsoleClient
context.__auth_server_url__数据访问验证服务器地址 
context.__auth_secret__Byzer-lang engine 回访请求服务器的密钥。比如 Notebook 调用了 Byzer-lang engine,需要传递这个参数, 然后 Byzer-lang engine 要回调 Notebook , 那么需要将这个参数带回 

其中 defaultPathPrefix 配置需要和 Byzer Notebook 配置文件中的 notebook.user.home 保持一致,才能访问到某个用户的目录。

例子

调用本机 API 例子

curl --location --request POST 'http://localhost:9003/run/script' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--data-urlencode 'sql=select 1 as id as output;' \
--data-urlencode 'owner=admin' \
--data-urlencode 'jobName=91f8e37d-cfc7-4167-b396-7f33c14bc7da'
Logo

更多推荐