Azure functions 如何在Azure函数中使用具有blob绑定的动态连接字符串

我知道azure函数支持与IBinder的动态绑定,使用它我可以创建具有动态路径的BlobAttribut,但此属性的连接属性始终作为配置项的名称进行处理。 如何在运行时直接将连接字符串(SAS令牌)指定给BlobatAttribute 谢谢很遗憾,这不受支持。首先,您不能将SAS令牌与blob绑定一起使用(您需要提供具有完全权限的连接字符串,请参阅GitHub问题和) 您不会得到绑定的好处,但您可以直接使用Azure存储SDK来代替。不幸的是,这不受支持。首先,您不能将SAS令牌与blob绑定

Azure functions 从Azure Function app中的文本中删除HTML标记

我正在编写一个简单的Azure函数应用程序,它应该接收一个包含HTML标记的字符串,删除HTML标记并返回“净化”文本 代码非常简单,比如 module.exports = async function (context, req) { if (req.body) { context.res = { body: req.body.replace(... something) }; } }; 就我所见,使用正则表达式来实现这

Azure functions 在同一azure function应用程序下部署多个功能不工作

试图在同一azure function app服务帐户中部署3个不同类型的函数(CosmosDBTrigger/TimerTrigger/HttpTrigger),附加文件夹结构以供参考 函数未按预期工作,但在成功部署后引发错误 预期收到: 函数(CopyToQueue)错误:Microsoft.Azure.WebJobs.Host:索引方法“CopyToQueue”时出错。Microsoft.Azure.WebJobs.Host:无法将参数“inputCloudSyncJobModels”绑定

Azure functions 功能应用程序中的某些Azure功能未运行

对于这个常见的问题,这里有几个答案 为什么功能应用程序中的单个功能(或某些功能)被禁用 根本不执行 如果您有错误或日志输出,可能很容易找到。但是,如果什么都没有,而且没有其他的想法有帮助,那就很难弄清楚了 行为: 创建一个功能应用程序 添加几个函数 有些工作,有些没有。没有错误,没有日志,什么都没有 出现这种(奇怪)行为的原因可能是host.json文件不完整: } 请参阅“函数”字段:它是实际运行函数的列表。如果此处缺少一个函数,则: 尽管如此,还是部署了未列出的功能 未列出的功能在门户中可

Azure functions 配置ADAL时Pulumi AD应用程序和Azure函数循环依赖关系

我正在使用ADAL身份验证设置azure功能,我与pulumi有一个问题,因为功能应用需要创建广告应用,然后广告应用需要创建功能应用以设置回复url const adAppName=`${projectName}-${env}` const adApp=new azuread.Application(adAppName{ 姓名:adAppName, 所需资源访问:[ { 资源访问:[ { id:“311a71cc-e848-46a1-bdf8-97ff7156d8e6”, 类型:“范围”, },

Azure functions 带有HTTP触发器的Azure函数返回204,但不执行该函数

我有一个bash脚本,它迭代一个文件夹中的所有文件,并使用curl将它们发布到带有HTTP触发器的Azure函数中 功能详情: -v2.0功能 -用C写的# -消费计划 在大多数情况下,这都能按预期工作: 该函数执行时,将文件放入存储器并触发下游进程 curl收到一个204响应,并记录下来 函数执行记录在Kudu中,大量遥测记录在Application Insights中 但是,有一次,curl接收到204,但没有调用函数的记录;Kudu中没有任何内容,Application Insight

Azure functions Azure Cli将部署期间的SCM_DO_BUILD_显式设置为false

我正在Jenkins build中使用Azure Cli将我的nodejsAzure函数部署到Azure。我需要Kudu构建npm包,以减少Jenkins端的部署时间 我在Azure功能配置中有SCM\u DO\u BUILD\u duration\u DEPLOYMENT=true,但Azure Cli在部署工件时显式将其设置为false!因此,应用程序将不包含node\u modules文件夹 我使用的命令与以下命令类似: az functionapp部署源配置zip--src artifa

Azure functions 我可以通过webhook将事件直接发送到Azure事件中心吗?

是否可以使用Webhook从SMS API(如Twilio或CM Telecom)将消息直接发送到Azure事件中心?如果是这样,我如何进行身份验证(如SAS)?我必须使用Azure功能吗? 我读过关于“事件订阅”的文章,认为它可能对这个集成有用,但我不确定它是如何使用的,以及它是否对这个用例有用 亲切问候,我发现这是不可能的,最好的方法是将webhook发送到azure HTTP触发器函数,然后该函数将事件的数据发送到事件中心,另一个主要原因是事件中心返回201响应,而大多数API预期200响

Azure functions 参考系统。配置

我尝试了以下方法,但没有成功 #r "System.Configuration" 这不应该是nuget参考。该怎么做呢?叹气,除了为加载引用程序集外,还必须为C#引用它 初学者的错误。是的,和普通的C#没什么不同,但我知道感觉不一样:) using System.Configuration;

Azure functions 如何使用java在Cosmos DB中设置重试策略?

如何使用java设置将记录推送到cosmosDB的重试策略 如果第一次推送记录失败,我想重试推送记录。我想在间隔2秒后重试推送5次 如何在java中进行这样的更改我阅读了java中的ConnectionPolicy,但无法理解它如何满足我的需求 参考链接: 代码: 您可以使用方法并使用as5和as10创建的实例(2秒x 5次重试尝试).你能不能再看一次上面的问题代码?在这里,我们设置了10,如何知道它必须等待2秒,然后重试?我找不到RetryOptions的源代码,但我在这里找到了Resourc

Azure functions Azure函数Http触发Ad身份验证Asp.net core 3.1

我已经用Azure函数HttpTriggers以及swagger UI(.net core 3.1,function V3)创建了Rest Api,它是同一项目中另一个Https触发器的一部分(同一函数项目下不同类文件中总共有两个触发器)。现在我已经从门户启用了Azure Ad身份验证,这在触发器上运行良好 现在问题开始了——我想在用户请求URL时看到招摇过市的UI(http://localhost:7071/api/Swagger/ui)在浏览器上。由于在功能级别启用了AD身份验证,我无法直接

Azure functions Azure函数自定义方法属性

我想要自定义函数属性,比如 [FunctionName("Function1"),Authentication] public static IActionResult Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)]HttpRequest req, TraceWriter log) { } [Authentication]是我的定制 身份验证实现函数调用过滤器属性。 如果身份验证失败,我

Azure functions 是否可以延迟计时器触发的azure函数的执行?

我有一个定期运行的计时器。有时,另一个函数(由不同的事件触发)执行计时器的工作,以清理其作业。是否可以告诉azure“假装这个计时器刚刚触发,并延迟到下一个预定时间” 有两种模式“在此cron选择的时间(例如:每小时过去10分钟)”和“上次执行后10分钟” 我的计时器当前处于后一种模式。 我使用的是函数v2。为什么会有两个函数做(部分)相同的事情?我会考虑把定时器的工作作为清理工作的功能,使它不做定时功能的工作。这可能会触发另一个功能为他做这项工作。例如,可以考虑使用HTTP触发器或队列触发器。

Azure functions 使用Azure函数CLI 2x创建触发器

我尝试将Azure函数EventHubTrigger 1x迁移到2x。但是,我的Azure函数CLI 2x无法绑定我的触发器,并且我的输出是找不到任何作业函数。尝试公开您的作业类和方法。这是我的项目 我不知道我错过了什么配置 感谢您的帮助首先,您的代码中没有绑定。首先,您错过了函数绑定,并且没有触发器绑定。下面是一个简单的eventhub函数示例 public static class Function2 { [FunctionName("Function2")]

Azure functions 放置特定文件集时调用ADF管道

我有一个要求,当某些文件集(带有日期后缀)放置在某个位置时,执行管道 例如,下面是文件: blobfolder1/a_20200101.txt blobfolder1/b_20200101.txt blobfolder1/c_20200101.txt blobfolder1/d_20200101.txt 我已在Blob文件夹“blobfolder1”上创建了“Blob created”azure订阅。每当文件放置在该位置时,它都会调用azure函数。现在,该函数检查是否所有文件(a、b、c和d)

Azure functions 使用Azure功能和服务总线处理MassTransit异常和错误队列

我在Azure Functions v3中运行MassTransit 7.1.8,使用服务总线作为传输。当使用者第一次抛出异常时,会在我的服务总线命名空间中创建两个主题:masstransit~fault(无任何订阅)和masstransit~fault--mynamespace~myevent--(有一个订阅fault masstransit) Azure函数Startup.cs public override void Configure(IFunctionsHostBuilder buil

Azure functions 应用程序服务计划上意外的azure功能超时

Azure函数最近在消费/动态计划上获得了5分钟超时行为 我在启用AlwaysOn的标准层应用程序服务计划上使用队列触发函数,但我仍然看到超时(10分钟后),然后是无限次重试,尽管我的host.json指定maxDequeueCount为1。我尝试在host.json中设置functionTimeout(设置为1h),但没有效果 我错过什么了吗?是否在任何地方记录了此功能,是否可配置 我只能找到对高级和标准层应用程序服务计划的执行时间不受限制的多个引用,但这与我看到的不匹配。 (运行时版本:最新

Azure functions 如何检索Azure函数应用程序';ARM模板中的默认主机密钥?

我能够从邮递员处检索Azure Function应用程序的默认主机密钥 我使用部署凭据和针对https://{{Function App Kudu Url}}/api/functions/admin/token的基本身份验证从Kudu获取令牌。然后,我使用针对https://{{Function-App-Url}}/admin/host/keys/default的承载身份验证包含返回的令牌,并接收默认主机密钥 但是,我想从ARMJSON模板中检索这个值。事实证明,谷歌在揭示如何实现这一目标方面并

Azure functions HttpAzure函数调用IP

我试图弄清楚当webhook/httptrigger调用Azure函数时,是否有可能从中获取触发Azure函数的IP地址 我只看过PowerShell,因为这是我所知道的,但到目前为止,我在调试时没有发现任何东西 /对于v2函数,我们使用HttpRequest,所以当我们使用HTTP触发器函数时,我们可以使用 req.HttpContext.Connection.RemoteIpAddress 然后您将能够看到客户端远程ip 可能重复感谢,但我在PowerShell中看不到。@Per Jubo

Azure functions 如何从持久函数编排器获取调用方函数名?

我有一个计时器触发器,它使用持久客户端调用编排器。有没有办法从orchestrator中获取调用方函数名 [函数名(“启动器”)] 公共静态异步任务启动器( [TimerTrigger(“0 0 1***”,runnstartup=true)]TimerInfo myTimer, [DurableClient]IDurableClient启动器, ILogger日志) { 等待starter.StartNewAsync(“Orchestrator”,null); } [函数名(“编排器”)] 公

Azure functions 来自文件上载的Terraform Azure函数应用程序

我正试图通过从本地文件系统上传一个zip文件来创建一个JavaAzure函数应用程序。下面是代码。当从windows 10系统运行时,它可以正常工作。同样的代码在从ubuntu系统运行时似乎不起作用,没有错误,但是函数应用程序在azure portal上没有任何函数。Terraform版本在windows和ubuntu上是相同的(Terraform v0.12.28)。但它在Ubuntu上似乎不起作用。下面是azure门户函数应用程序上的错误消息 var.functopp=“func_java.

Azure functions 这三个错误弹出窗口的原因是什么?我应该担心吗?

在我工作的时候,azure门户中快速地出现了一个又一个。但我的函数应用程序中没有错误 错误: 我们无法访问您的功能应用程序服务不可用。请稍后再试 会话Id:53306646fe66442b8ee4ed3c908a95dd 时间戳:2017-03-02T05:50:28.432Z 错误: 主机错误:Microsoft.WindowsAzure.Storage:无法连接到远程服务器。系统:无法连接到远程服务器。系统:试图以其访问权限所禁止的方式访问套接字 会话Id:53306646fe66442b8

Azure functions Azure功能:应用程序冻结-“;“不允许加载表示装配”;在错误消息中

我有一个Azure功能应用程序,它偶尔会“冻结”并停止处理消息和定时事件 发生这种情况时,我在日志(AppInsight)中看不到太多内容,除了以下错误消息告诉我“UnableToLoadExpressionAssembly”: 这里出了什么问题?问题是由于使用的部署机制没有启动触发同步,这会阻止基础结构在需要时激活功能应用程序 使用CI/CD集成、Visual Studio、MSDeploy或ZIP部署的部署将触发同步,并确保在需要时激活功能应用程序。您是否有可以共享的堆栈跟踪?此外,如果您可

Azure functions req.Content.ReadAsStringAsync()。从浏览器(但不在Azure门户中)访问时,结果始终返回null

下面包含我的完整代码(Azure门户上的Azure功能应用程序)。请特别注意这两条线 var jsonContent=req.Content.ReadAsStringAsync().Result; 日志信息(“jsonContent”+jsonContent); 当我使用右侧面板下方的请求主体测试函数时,jsonContent会按原样打印在日志中。但是,在浏览器中使用函数url,并将其附加&name=azure,则jsonContent为空,如日志所示 //完整代码 #r“Newtonsoft

Azure functions Azure功能在Core 3.0更新后停止工作

代码在Core 3.0 preview7版本中运行,但在更新到3.0 Azure后,函数开始给出错误 如果尝试访问生成器服务对象,则会出现错误。也无法调试该问题。还尝试更新Microsoft.Extensions.DependencyInjection 3.0,但仍然出现相同的错误 public class Startup : FunctionsStartup { public override void Configure(IFunctionsHostBuilder builder)

Azure functions Azure函数:内存不足,无法继续执行程序

试图在本地运行Azure Functions项目,但出现以下错误: Insufficient memory to continue the execution of the program. 这发生在任何事情被记录或启动之前,因此没有什么要调试的 有人知道如何调试这个吗 我已经删除了所有代码,删除了所有依赖项。剩下的只是一个默认的计时器函数,没有实现。它仍然不起作用 如果我创建一个新的函数项目func init,一切都会正常工作。在项目文件host.json、local.settings.js

Azure functions 这个NContab表达式正确吗?

我想创建一个azure函数,从现在起到2020年6月21日,23:00:00每周三调用一次。我尝试了以下表达式:023**星期三。 但我不知道如何在2020年6月21日之后阻止它。如何做到这一点?您可以尝试使用此cron表达式: 0 0 23 * Jan-May Wednesday 另一个计时器触发器cron表达式应为: 0 0 23 1-21 June Wednesday 顺便说一下,由于azure函数中的cron表达式无法设置year属性,因此如果使用此cron表达式,最好在1月21日之

Azure functions 集成测试Azure TimerTrigger函数

集成测试Azure TimerTrigger函数的最佳方法是什么 我有一个Azure函数,它将数据从Oracle表复制到Azure SQL表,并通过SendGrid发送电子邮件。以下是伪代码: public static void Run(TimerInfo myTimer, ILogger log) { Fecth_Data_From_Oracle_table() Insert_Data_To_AzureSQL_table() Send_StatusEmail_Via_

Azure functions Azure函数超时

计划在Azure消费定价模型上提供基于“队列触发”的Azure功能。每次调用此函数时,它可能会随机运行1分钟到30分钟,甚至更长/更短,具体取决于时间。偶尔最大运行时间约为45分钟,其他情况下,最大运行时间大部分在10分钟内 基于“队列触发”的Azure函数是否存在超时?如果是,最大超时时间是多少 是否有任何基于Azure函数的实践来克服超时限制 (或) 是否可以将“持久功能”视为超过最大超时时间限制的替代方案 (或) Azure上还有其他更好的无服务器组件可供使用吗?您可以使用常规应用程序服务

Azure functions ILogger的所有条目都到哪里去了?

这是portal.azure.com最近的一个变化,我似乎再也找不到我的功能(core 3.1)日志了?由ILogger输出的。在我进入函数和查看执行以及查看使用ILogger生成的日志之前。我再也找不到了,他们移动了吗?现在,该功能必须配置相应的应用程序细节,然后才能在门户上查看日志 因此,您需要将应用程序洞察配置为功能应用程序,如下所示: 然后你的功能应用程序将重新启动 当然,您也可以到kudu查看: 首先,转到高级工具,然后单击“转到” 然后在您转到kudu之后,单击调试控制台->命令

Azure functions Azure函数OpenID连接(预览)设置内部服务器错误

我按照这里的指示: 我发现这篇博文非常有用: 要设置open id connect,以便我的azure函数可以与我的auth0配置集成,包括使用azure函数身份验证模块的配置文件支持的设置 我的auth.json文件如下所示: { “平台”:{ “已启用”:真 }, “全球验证”:{ “requireAuthentication”:正确, “redirectToProvider”:“auth0”, “未经验证的客户端操作”:“重定向到登录页面” }, “身份提供者”:{ “ope

Azure functions 如何使用函数app复制blob数据并将其存储在子目录中

我的源虚拟文件夹中有一个blob,我需要将源blob移动到另一个虚拟文件夹,并使用azure function app删除源blob 正在将blob数据从1个目录复制到另一个目录 删除源blob 请通过功能应用程序代码指导我如何将blob从一个目录复制到另一个目录并删除blob 在将blob复制到另一个目录时,我遇到了一些问题 public async static void CopyDelete(ILogger log) { var ConnectionStrin

Azure functions 如何让正在执行的azure函数在关闭期间完成?

当函数应用程序重新启动时,活动函数将被终止,其中包括重新启动、停止/启动、在顶部发布和交换部署插槽。对于经常运行的函数,这是一个问题 我们坚持我们功能的目标是非常快速的运行。也许最多几秒钟 但是,当功能应用程序停止或重新启动时,主机不会为“正在运行”的功能提供在停止前完成的机会。这意味着我们必须管理每个函数执行的状态,这违背了无状态、快速运行函数的目的。更糟糕的是,管理该状态(比如将其写入某种存储)也不能保证完成 有没有办法将函数应用程序配置为不执行此操作(并在强制取消函数执行之前等待X秒)?如

Azure functions Azure功能:如何在本地开发环境中仅启动特定功能?

如果我想在开发环境中启动所有可用功能,我只需执行以下操作: func host start 是否有一种方法可以选择可用功能的子集,而不必将要停用的功能移出工作目录等 PS我使用Python来实现函数本身。有三种实现方法 : 一个是修改function.json: "bindings": [ ... ], "disabled": "IS_DISABLED" 另一种方法是使用Disable属性来防止触发功能 [Disable] [FunctionName("Function"

Azure functions 调试Azure函数V1.0

我已经创建了一个Azure函数(V1),并使用设置发布了它 当队列中存在blob时,此函数将被触发 我的函数基于业务逻辑处理blob数据 我创建了监视工具来捕获业务逻辑中写入的日志。所以,我可以找到方法,从日志中抛出异常 然而,我无法从引发异常的方法中找出代码行 我见过几种远程调试函数代码的方法。但是,连接函数并点击断点花费的时间太长(将近两个小时)。此外,逐行调试代码也会花费太多时间。因此,我在论坛上寻找不同的方法来快速调试函数。发现一件好东西- 它最大限度地减少了自动连接进程的工作量。通过

Azure functions 是否可以使用Azure逻辑应用程序或Azure函数读取ActiveMQ?

我正在尝试将ActiveMQ(内部)中的消息读取到Azure中。 是否有可能使用Azure逻辑应用程序或Azure功能 问候 普拉巴斯 对于逻辑应用程序:不是真的 函数:这取决于你想做什么。如果您希望在新消息上触发一个函数,就像Azure事件中心等一样,这不是内置的。您可以通过构建自定义MQTT触发器部分实现这一点。然而,这并没有得到官方的支持,即使您成功地构建并运行了它,您也不会得到内置的函数缩放逻辑。 但是,如果您希望按需读取消息,例如使用计时器触发的函数,则从技术上讲,可以在函数代码中使用

Azure functions 分区键为partition时Azure函数的Azure Cosmos DB输入绑定。无

我有一个cosmos集合,它将包含少于10个文档,这个集合没有分区键。因此,当访问Trow cosmos容器时,我使用了PartitionKey.None,它工作得非常好 现在我需要将Azure函数绑定到此集合: [FunctionName("MyFunction"))] public async Task Run( [ServiceBusTrigger("TopicName","TopicSubscription","ServiceBusConnectionStringKey")] MyEve

Azure functions Azure函数触发器侦听器突然停止运行

我将基于服务总线触发器的Azure功能部署到应用程序服务。该功能的状态显示为在门户中运行。我选择它是基于消费计划。问题如下: 部署该功能后,它将处理服务总线中的所有消息,一旦服务总线没有要处理的新消息,我将在application insights中看到一条消息: 停止函数的侦听器“Microsoft.Azure.WebJobs.ServiceBus.Listeners.ServiceBusListener”。 一旦侦听器停止,该函数不会处理服务总线中的任何消息,直到我打开门户并导航到该函数。打

Azure functions 是否有办法查看Azure函数运行时在Linux中何时更新?

对于Azure函数,我如何判断Linux服务器上Azure应用程序服务计划的函数\扩展\版本何时更新 请注意,这与同一问题有关 对于Azure功能,我如何判断Azure应用程序服务计划何时启动 功能扩展版本是否在Linux服务器上更新 Linux azure函数不同于windows azure函数。它们的设计方法不同。我首先尝试使用ftp并连接到物理路径以查看其中记录的日志信息。手动更改运行时版本后,我检查了所有日志文件,但没有一个存储相关信息。然后我使用Azure Monitor来监视函数应用

Azure functions azure函数中的自定义配置部分?

我们使用的是Recury的.NETAPI客户端,它需要一个自定义配置部分,如下所示。azure功能是否支持此功能 <configsections> <section name="recurly" type="Recurly.Configuration.Section,Recurly"/> </configsections> <recurly apikey="xxxxxx" subdomain="test"/> 不幸的是,Azure函数当前不支

Azure functions 使用Azure函数处理Azure Datalake存储文件

我定期在Azure Datalake存储区的特定文件夹中获取文件。一旦文件出现,我想使用Azure函数进一步处理它。可能吗 更新:对于Azure Data Lake存储,存储扩展确实应该可以工作,一些基本测试确实证实了这一点 还有一些问题有待官方确认 虽然Azure Data Lake Storage(ADLS)Gen2构建于Azure Blob存储之上,但有几项已被记录在案 由于这些差异,我认为我们不能使用Blob存储或事件网格可用的现有绑定 但是您仍然可以有一个由计时器触发的函数,例如,使

Azure functions 写入ILogger的Serilog不会出现(Azure功能V2)

我已安装Serilog并配置为将日志事件数据写入MS SQL Server for Azure函数中的表 系统日志和静态类本身编写的日志会显示在表中,但当我尝试使用Extensions.Logging.ILogger时,即使我可以在ILogger中看到Serilog提供程序,消息也不会显示在表中 Startup.cs配置 使用Microsoft.ApplicationInsights.Extensibility; 使用Microsoft.Azure.WebJobs.Hosting; 使用Seri

Azure functions 从数据库中的数据运行大量活动函数

我们有一个数据库,需要计算大约40万个元素。下面显示了orchestrator函数的示例 [FunctionName("Crawl")] public static async Task<List<string>> RunOrchestrator( [OrchestrationTrigger] DurableOrchestrationContext context) { if (!context.IsReplaying) { } WriteLin

Azure functions Azure Function with QueueTrigger:是否可以仅配置存储帐户Url并使用托管标识访问队列?

我定义了这个函数: [FunctionName(“我的队列触发器”)] 公共任务RunAsync([QueueTrigger(“我的队列名称”,Connection=“azurewebjobstorage”)]字符串文本) { //代码在这里。。。 } 而AzureWebJobsStorage(在Azure上)包含以下内容:“DefaultEndpointsProtocol=https;AccountName=my存储帐户;AccountKey=mykey;EndpointSuffix=cor

Azure functions 无法加载文件或程序集';Microsoft.Extensions.Logging.Abstractions

我正在部署一个函数,并且我能够在Visual studio的函数应用程序V2中成功地构建和发布它,但是在azure门户中,我在我的函数应用程序中看到以下消息。我已经添加了必要的包,但仍然没有用。是否有人遇到此错误并有任何反馈。Visual studio的输出窗口中也没有错误 如果我删除这个抽象版本,它会说3.1.5版本中找不到文件。当我添加版本3.1.5时,它会说找不到文件。不知道怎么了。github中有一个讨论,但该线程现在已关闭,没有太多信息 谢谢 System.Private.CoreLi

Azure functions 如何使用Azure Function应用程序过滤服务总线事件?

如何使用Azure Function应用程序过滤服务总线事件?如果我有一个“事件”主题,并且我将10个不同的事件发布到一个主题。如何获取azure函数以筛选事件。Azure Function apps服务是否允许在使用Function apps时进行过滤?队列和订阅触发Azure功能;它们不是为过滤掉消息而设计的。如果您的主题接收到两个事件,EventA和EventB,并且只有一个订阅触发了该函数,则该函数将处理这两种事件类型。您的功能代码负责“过滤”消息并执行正确的逻辑。这种过滤可以通过查看客

  1    2   3   4   5   6  ... 下一页 最后一页 共 11 页