关键字:API、api、远程
释义
远程调用其他第三方的服务
1、get请求
函数部分
let AbstractTrigger = require('AbstractTrigger'); class MyTrigger extends AbstractTrigger { execute(context, param) { /* 可以查看context、param的数据形态*/ // var jsonData = JSON.stringify(context);// 转成JSON格式 // var jsonparam = JSON.stringify(param);// 转成JSON格式 // 可以弹出具体的信息(类似前端函数的alert) // throw new Error("contextResult====>" + jsonData + " param====> " +jsonparam); //信息体 let body = {}; //信息头 let header = { 'Content-Type': "application/json;charset=UTF-8", // 就是appCode 'apicode': "177b428d-c46c-4c48-af4b-bfa4fedcee5d", 'appkey': "1a56832e8e404c20a8fd6aa162191e0f" }; // header里必须配置apicode、appkey信息 // 可以是http请求 //let responseObj = apiman("get", "http://IP:端口号/getApiMan", JSON.stringify(header), JSON.stringify(body)); // 也可以是https请求 let responseObj = apiman("get", "https://whgang.natappvip.cc/getApiMan", JSON.stringify(header), JSON.stringify(body)); // 可以直观的看到具体的错误信息 // throw new Error(responseObj); return { responseObj }; } } exports({ "entryPoint": MyTrigger });
后端应用(此次以springBoot项目举例说明、只展示部分核心代码)
package com.yonyou.iuap.corp.demo.web; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.Map; @RestController public class PostManController { @GetMapping("getApiMan") public ApiManDto getApiMan() { ApiManDto apiMan = new ApiManDto(); apiMan.setCode("200"); apiMan.setMessage("getApiMan调用成功"); return apiMan; } }
结果展示
2、post请求
-
let AbstractTrigger = require('AbstractTrigger'); class MyTrigger extends AbstractTrigger { execute(context, param) { /* 可以查看context、param的数据形态*/ // var jsonData = JSON.stringify(context);// 转成JSON格式 // var jsonparam = JSON.stringify(param);// 转成JSON格式 // 可以弹出具体的信息(类似前端函数的alert) // throw new Error("contextResult====>" + jsonData + " param====> " +jsonparam); //信息体 let body = { testBody: "testBody" }; //信息头 let header = { 'Content-Type': "application/json;charset=UTF-8", // 就是appCode 'apicode': "177b428d-c46c-4c48-af4b-bfa4fedcee5d", 'appkey': "1a56832e8e404c20a8fd6aa162191e0f" }; // header里必须配置apicode、appkey信息 // 可以是http请求 //let responseObj = apiman("get", "http://IP:端口号/getApiMan", JSON.stringify(header), JSON.stringify(body)); // 也可以是https请求 let responseObj = apiman("post", "https://whgang.natappvip.cc/getApiManByPost", JSON.stringify(header), JSON.stringify(body)); // 可以直观的看到具体的错误信息 // throw new Error(responseObj); return { responseObj }; } } exports({ "entryPoint": MyTrigger });
后端应用(此次以springBoot项目举例说明、只展示部分核心代码)
package com.yonyou.iuap.corp.demo.web; import com.yonyou.iuap.corp.demo.model.ApiManDto; import org.springframework.web.bind.annotation.*; import java.util.HashMap; import java.util.Map; @RestController public class PostManController { @PostMapping("getApiManByPost") public Map<String, String> getApiManByPost(@RequestBody Map<String, String> mapDemo) { Map<String,String> map = new HashMap<>(); map.put("code","200"); // 最简单的案例(故此处写死获取前台后端函数body体的参数) map.put("apiBody",mapDemo.get("testBody")); map.put("message","getApiManByPost调用成功"); return map; } }
3、总述
可以是https请求、也可以是http请求
header里必须配置apicode、appkey信息
后端代码可返回实体、对象; 不能是简单的字符串、后端函数 "apiman" 解析不了