AIWROK软件对接豆包实例分享
//适用本文档ES5系统安卓 JavaScript引擎Rhino//711841924官方AIWROK软件交流群号
// 1. 创建一个新的 okHttp 对象豆包实例
var http = new okHttp();
// 2. 设置 HTTP 请求头
var aa=uiText.findByID(控件ID="gd").getText()
http.setHeader("Authorization", aa);
http.setHeader("Content-Type", "application/json;charset=UTF-8");
// 3. 定义要发送的 JSON 格式的数据
var postData = {
"model": "doubao-seed-1-6-thinking-250715",
"messages": [
{
"role": "user",
"content": "天空为什么是蓝色的?"
}
]
};
// 4. 定义要请求的 URL
var url = "https://ark.cn-beijing.volces.com/api/v3/chat/completions";
// 5. 发送 JSON 格式的 POST 请求到指定的 URL,并获取响应结果
// 使用 json 方法
var response = http.json(url, postData);
// 6. 打印 POST 请求的响应结果
// 打印完整的响应内容
console.log("完整响应内容:", response);
// 使用正则表达式采集回来 content
// 修正后的正则表达式
var regex = /"content":\s*"([\s\S]*?)"/;
var match = response.match(regex);
if (match && match) {
console.log("提取的 content 内容:", match);
} else {
console.log("没有找到匹配的内容");
}
解释总结:创建一个新的 okHttp 对象实例:var http = new okHttp();创建了一个新的 okHttp 对象实例,并将其赋值给变量 http。okHttp 是一个用于发送 HTTP 请求的库。设置 HTTP 请求头:var aa = uiText.findByID("gd").getText();通过 uiText.findByID 方法找到 ID 为 “gd” 的控件,并获取其文本内容,赋值给变量 aa。uiText.findByID 是一个用于在用户界面上查找特定 ID 的控件的方法,getText 方法用于获取该控件的文本内容。http.setHeader("Authorization", aa);设置 HTTP 请求头中的 Authorization 字段为变量 aa 的值。Authorization 字段通常用于身份验证,这里的值是从控件中获取的。http.setHeader("Content-Type", "application/json;charset=UTF-8");设置 HTTP 请求头中的 Content-Type 字段为 application/json;charset=UTF-8。Content-Type 字段告诉服务器请求体的数据格式是 JSON,并且使用 UTF-8 编码。定义要发送的 JSON 格式的数据:var postData = {定义了一个 JSON 对象,包含了模型名称和用户的消息。"model": "doubao-seed-1-6-thinking-250715",model 字段指定了要使用的模型名称。"messages": [定义了一个消息数组,包含用户的消息。{消息对象的开始。"role": "user",role 字段表示发送消息的主体,这里是用户。"content": "天空为什么是蓝色的?"content 字段包含了用户的具体问题。}消息对象的结束。消息数组的结束。};注意这里有一个多余的 };,应该删除以避免语法错误。定义要请求的 URL:var url = "https://ark.cn-beijing.volces.com/api/v3/chat/completions";定义了要请求的 URL,赋值给变量 url。url 是你要发送请求的目标地址,指向一个 API 接口。发送 JSON 格式的 POST 请求到指定的 URL,并获取响应结果:var response = http.json(url, postData);使用 http 对象的 json 方法发送一个 POST 请求到 url,请求体为 postData,并将响应结果赋值给变量 response。http.json 方法会自动将 postData 对象转换为 JSON 格式的字符串,并发送到指定的 URL,同时获取服务器的响应结果。打印 POST 请求的响应结果:console.log("完整响应内容:", response);使用 console.log 方法打印完整的响应内容。console.log 用于在控制台输出信息,方便调试和查看结果。使用正则表达式采集回来 content:var regex = /"content":\s*"([\s\S]*?)"/;定义了一个正则表达式,用于匹配 JSON 响应中的 content 字段及其内容。regex 是一个正则表达式对象,用于从响应字符串中提取 content 字段的内容。([\s\S]*?) 表示匹配任意字符(包括换行符)零次或多次,非贪婪模式,用于获取 content 字段的具体内容。var match = response.match(regex);使用 response.match 方法将正则表达式 regex 应用到响应结果 response 上,寻找匹配项,并将结果赋值给变量 match。match 方法会返回一个数组,包含匹配到的内容及其捕获组。如果没有匹配到,则返回 null。if (match && match) {如果 match 不为 null 并且 match 存在(即找到了 content 字段的内容),则执行 if 块中的代码。console.log("提取的 content 内容:", match);打印提取的 content 字段的内容。match 包含了正则表达式中第一个捕获组的内容,即 content 字段的具体内容。} else {如果没有找到匹配的内容,则执行 else 块中的代码。console.log("没有找到匹配的内容");打印 “没有找到匹配的内容”。这是一个备用情况处理,确保在没有匹配到预期内容时也能有相应的提示。}if 语句的结束。
页:
[1]