- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Fn 项目的新手,使用 fn init --runtime java HelloWorld-func
创建了第一个 Java 应用程序,并尝试了一些其他方案,但遇到了 GET 调用的问题。
curl -X GET http://localhost:8080/invoke/01EJTD2K1JNG8G00GZJ0000002{"message":"Method not allowed: GET/invoke/01EJTD2K1JNG8G00GZJ0000002"}
fn 版本 0.5.97
谢谢。
最佳答案
Fn 中有两种内置的函数调用方式
它们有不同的目的:
调用 API 是系统到系统的 API,旨在允许软件和系统调用函数作为其代码的一部分 - 举个例子,如果您正在编写一个想要使用函数来处理内部应用程序的应用程序,则可以使用它事件。此 API 有一个狭窄的契约,使客户端应用程序更容易处理错误并区分函数何时引发错误或 fn 服务器何时引发错误。该API仅接受POST请求,并且仅返回一组有限的响应代码。
另一方面,HTTP 触发器是一种直接在其自己的 HTTP 端点上公开函数的内置方法(例如,用于提供网页或处理您定义的 API)。
触发器从客户端获取原始 HTTP 请求(可以包含任何动词,如 PUT/POST/HEAD 和任何 HTTP header ),并将请求包装在对底层函数的调用中,然后该函数可以提取有关请求的信息并生成HTTP 响应。在 Oracle 云基础设施中,您可以执行相同的操作,但您将使用 API 网关而不是触发器来接收传入请求(见下文)。
在内部,您可以将触发器视为调用端点之上的一层,它将 HTTP 请求包装到调用 API 上的调用中,使用包装的请求调用函数,然后将函数中的 HTTP 响应信息解包回 HTTP请求。
因此,调用 API 与触发器或 API 网关之间的主要区别在于,在调用 API 上,Fn 定义了 API(以便更轻松地在 Fn 之上构建软件),但在触发您定义 API - 您可以捕获完整请求并定义完整 HTTP 响应。
在 Fn 中,如果您想公开由处理 GET 并返回网页的函数实现的 REST API,您将:
fn deploy ...
) fn create trigger <appname> <funcname> <triggername> --type http --source http
fn list trigger <appname>
testapp testtrigger 01E6YM3R80NG8G00GZJ000000R http /trig http://localhost:8080/t/node/trig
curl http://localhost:8080/t/node/trig
...
在 Oracle 云基础设施中,您可以通过创建将函数绑定(bind)到 HTTP 端点的 API 网关来执行相同的操作。这里记录了如何执行此操作的示例:
https://blogs.oracle.com/developers/creating-your-first-api-gateway-in-the-oracle-cloud https://blogs.oracle.com/developers/working-with-http-in-oracle-functions-using-the-fn-project-python-fdk
关于oracle-cloud-infrastructure - 不允许 GET 方法用于 fn 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64006637/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?将问题更新为 on-topic对于堆栈溢出。 1年前关闭。 社区上个月审查了是否重新打开此
就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the he
我与我们的开发团队进行了讨论,以在应用程序服务器上安装本地MTA,或者是否应该使用内部网络上的MTA服务器发送电子邮件。两种解决方案都各有利弊。 优点:发送电子邮件的程序可以将其传递到本地MTA,而不
文档说( Terminating an Instance ),已终止的实例暂时保留在状态为已终止的实例列表中。 从控制台中删除终止的实例是否有任何特定的时间限制? 最佳答案 终止 API 调用成功后停
我从一个全局变量的地址得到了一个 *TypeB 类型的常量指针,我需要将它转换为一个 *TypeA 类型的指针,其中 TypeB 不同于 TypeA 但也是有效的 TypeA。 例如 TypeA 可能
我无法可靠地允许启用了istio的Google Kubernetes Engine集群通过extensible service proxy连接到Google Cloud Endpoints(服务管理A
我对云没有经验。我在 Oracle Cloud 中创建了一个计算实例。但是,当我尝试使用公共(public) i/p 通过 ssh 访问它时,它显示“无法连接到主机端口 22:操作超时”。我已经为实例
我正在使用 FuentMigrator 和 FluentMigrator.Runner 3.1.3 我的迁移工作正常并针对数据库执行。但是当我尝试执行嵌入式资源 sql 时,我收到以下错误消息: 无法
我试图将我的网站上传到服务器。它在我的本地主机上运行良好,所以我将本地主机 wwwroot 文件夹中的所有内容上传到服务器并更改了连接字符串。 但是有这个错误: Exception informati
当我尝试访问我的应用时,我收到以下错误。 AppRegistryNotReady: The translation infrastructure cannot be initialized befor
您好,我已经使用下单方法在软层上订购了 block 存储设备。我想知道订购设备的名称和 ID。怎么会知道呢。下订单方法不返回 id 或名称作为响应。我需要 id 才能在 softlayer 上调用一些
引导卷是指包含操作系统文件的磁盘卷吗?引导卷和块卷的定义是什么? 最佳答案 是的,通常启动卷用作计算实例的操作系统磁盘,块卷用作数据存储,但启动卷也是一种块卷。 一些差异: 启动实例不需要块卷,但需要
我在 Macbook Pro 上创建了一个网络(位于 WiFi 列表下方),并且有 2 个 iOS 7(iPad 2 和 iPod Touch)设备加入到该网络。当我开始浏览设备时,我只是在 nati
全部,我正在编写一个 Powershell cmdlet。让我的本地机器上的 cmdlet 一切正常。查看访问远程计算机所需的内容,似乎我需要在我的项目中引用 Microsoft.Management
我正在沉浸在 DDD 中,并且有一个关于什么属于该域以及什么是基础设施问题的问题。 描述域的简化示例: 应用程序中的上下文之一是关于允许用户检查网页以获取某些信息的便利功能。即.. “用户想要检查网页
本文整理了Java中pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperPaths类的一些代码示例,展示了ZookeeperPaths类的
本文整理了Java中pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperTopicRepository类的一些代码示例,展示了Zookee
本文整理了Java中pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperSubscriptionRepository类的一些代码示例,展示
本文整理了Java中pl.allegro.tech.hermes.infrastructure.zookeeper.ZookeeperGroupRepository类的一些代码示例,展示了Zookee
伙计们,我对添加对 Microsoft.Web.Infrastructure.dll 的引用感到非常痛苦,也许有人可以帮我解决这个问题。 我正在尝试添加对 Microsoft.Web.Infrastr
我是一名优秀的程序员,十分优秀!