文档首页 > > 开发指南> 函数初始化入口Initializer> Initializer入口介绍

Initializer入口介绍

分享
更新时间:2020/12/14 GMT+08:00

以下将FunctionGraph目前所支持在线编辑语言中对initializer入口的定义以及参数意义进行介绍。

Node.js

FunctionGraph目前支持以下Node.js运行环境:

  • Node.js 6.1 (runtime = Node.js6)
  • Node.js 8.9 (runtime = Node.js8)

Initializer入口格式为:

[文件名].[initializer]

示例:实现initializer接口时指定的Initializer入口为“index.initializer”,那么函数服务会去加载index.js中定义的initializer函数。

在函数服务中使用Node.js编写initializer逻辑,需要定义一个Node.js函数作为initializer入口,一个最简单的initializer示例如下。

exports.initializer = function(context, callback) {
    callback(null, '');
    };
  • 函数名

    exports.initializer需要与实现initializer接口时的Initializer字段相对应。

    示例:创建函数时指定的Initializer入口为index.initializer,那么函数计算会去加载index.js中定义的initializer函数。

  • context参数

    context参数中包含一些函数的运行时信息。例如:request id、临时AK、function meta等。

  • callback参数

    callback参数用于返回调用函数的结果,其签名是function(err, data),与Nodejs中惯用的callback一样,它的第一个参数是error,第二个参数data。如果调用时error不为空,则函数将返回HandledInitializationError,由于屏蔽了初始化函数的返回值,所以data中的数据是无效的,可以参考上文的示例设置为空。

Python

FunctionGraph目前支持以下Python运行环境。

  • Python 2.7 (runtime = python2.7)
  • Python 3.6 (runtime = python3)

Initializer入口格式为:

[文件名].[initializer名]

示例:实现initializer接口时指定的Initializer入口为main.my_initializer,那么FunctionGraph会去加载main.py中定义的my_initializer函数。

在FunctionGraph中使用Python编写initializer,需要定义一个Python函数作为initializer入口,一个最简单的initializer示例如下。

def my_initializer(context):
    print("hello world!")
  • 函数名

    my_initializer需要与实现initializer接口时的Initializer字段相对应,实现initializer接口时指定的Initializer入口为main.my_initializer ,那么函数服务会去加载main.py中定义的my_initializer函数。

  • context参数

    context参数中包含一些函数的运行时信息,例如:request id、临时AK、function meta等。

PHP

函数服务目前支持以下PHP运行环境。

  • Php 7.2 (runtime = Php7.2)

Initializer格式为:

[文件名].[initializer名]

示例:创建函数时指定的initializer为main.my_initializer,那么FunctionGraph会去加载main.php中定义的my_initializer函数。

在函数服务中使用PHP实现initializer接口,需要定义一个PHP函数作为initializer入口,一个最简单的initializer示例如下。

<?php
Function my_initializer($context) {
    echo 'hello world' . PHP_EOL;
    }
?>
  • 函数名

    my_initializer需要与实现initializer接口时的initializer字段相对应。

    示例:实现initializer接口时指定的Initializer入口为main.my_initializer,那么函数计算会去加载main.php中定义的my_initializer函数。

  • context参数

    context参数中包含一些函数的运行时信息,例如:request id、临时AK、function meta等。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问