云函数

作者: 随风飞2019 | 来源:发表于2020-06-07 16:31 被阅读0次

    首先创建一个云函数,创建一个api网关做为触发器。
    云函数支持通过传递参数来访问,如get请求,传递一个need=all字段到云函数
    云函数通过event的event.queryString.need获取传递过去的参数,以便得到不同的结果
    下面是一个示例

    'use strict';
    exports.news = async (event, context, callback) => {
        let newsList = await this.getNewsList();
        let userList = await this.getUserList();
        if(event.queryString&&event.queryString.need=="news"){
            return newsList
        }
        if(event.queryString&&event.queryString.need=="user"){
            return userList
        }
        if(event.queryString&&event.queryString.need=="all"){
            return {newsList,userList}
        } 
    };
    //根据传递的参数,执行不同的方法,得到不同的结果。
    
    exports.getNewsList = async (event, context, callback) => {
        let newsList=[
            {
                id:1,
                title:"美国发生大规模抗议示威!"
            },
            {
                id:2,
                title:"加拿大又想挨打了"
            }
        ]
        return newsList
    };
    
    exports.getUserList = async (event, context, callback) => {
        let userList=[
            {
                id:1,
                username:"zyw0605688"
            },
            {
                id:2,
                user:"admin"
            }
        ]
        return userList
    };
    
    //而前端就需要去传递参数,以便得到结果。
    getNewslistOrUserlist() {
          let baseUrl = "https://service-oc96x90j-1301432702.bj.apigw.tencentcs.com/release/get_news_list";
          axios.get(baseUrl+"?need=all").then(res => {
              console.log(res.data);
            });
        }
    
    //同时也支持post传参
    getNewslistOrUserlistParams() {
          let baseUrl = "https://service-oc96x90j-1301432702.bj.apigw.tencentcs.com/release/get_news_list";
          let params={need:"user"}
          axios.post(baseUrl,params).then(res => {
              console.log(res.data);
            });
        }
    
    //后端代码,通过event.body获取参数
    exports.news = async (event, context, callback) => {
        let newsList = await this.getNewsList();
        let userList = await this.getUserList();
        let params=JSON.parse(event.body).need;
        if(params=="news"){
            return newsList
        }
        if(params=="user"){
            return userList
        }
        if(params=="all"){
            return {newsList,userList}
        }
    };
    

    相关文章

      网友评论

          本文标题:云函数

          本文链接:https://www.haomeiwen.com/subject/ukoazhtx.html