💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、豆包、星火、月之暗面及文生图、文生视频 广告
# RegisterConverter `RegisterConverter(Name, MediaType, ConvertCallback, ParseCallback, [Instance], [ParseType])` `Name`-`{String}` 与`CustomRequestFormat`或`CustomResponseFormat`一起使用的转换器的名称 `MediaType`-`{String}` 用于`Content-Type`和`Accept`标头的媒体类型 `ConvertCallback`-`{String}` 用于转换的全局或对象函数名称 `ParseCallback`-`{String}` 用于解析的全局或对象函数名称 `Instance`-`{Object}` *可选* 使用`ConvertCallback`和`ParseCallback`的实例方法 `ParseType`-`{String}` *可选* `"String"`(默认)或`"Binary"`将原始二进制响应传递给`ParseCallback` 注册自定义转换器以转换请求`Body`和响应`Content`。 如果`ConvertCallback`或`ParseCallback`是对象方法,则传入一个对象实例。 如果`ParseCallback`需要原始二进制响应值(例如文件下载),则设置`ParseType ="Binary"`,否则使用`"String"`。 * `ConvertCallback` signature: `Function ...(Value As Variant) As String` * `ParseCallback` signature: `Function ...(Value As String) As Object` ~~~vb '// 1. 使用全局模块函数进行转换和分析 '// --- '// Module: CSVConverter Function ParseCSV(Value As String) As Object '// ... End Function Function ConvertToCSV(Value As Variant) As String '// ... End Function WebHelpers.RegisterConverter "csv", "text/csv", _ "CSVConverter.ConvertToCSV", "CSVConverter.ParseCSV" '// 2. 使用转换和分析的对象实例函数 '// --- '// Object: CSVConverterClass '// 与上述相同... Dim Converter As New CSVConverterClass WebHelpers.RegisterConverter "csv", "text/csv", _ "ConvertToCSV", "ParseCSV", Instance:=Converter '// 3. 将原始二进制值传递给ParseCallback '// --- '// Module: ImageConverter Function ParseImage(Bytes As Variant) As Object '// ... End Function Function ConvertToImage(Value As Variant) As String '// ... End Function WebHelpers.RegisterConverter "image", "image/jpeg", _ "ImageConverter.ConvertToImage", "ImageConverter.ParseImage", _ ParseType:="Binary" ~~~