如何检查Post body并作出响应?

news2024/11/15 9:13:41

如果需要针对POST body中包含的参数对传入的请求作出响应,你打算怎么做?其实在使用Akamai EdgeWorkers的情况下,只需要一些高级MD(MetaData)技巧,这一切实现起来可以变得非常简单。

Akamai EdgeWorkers是什么? Akamai EdgeWorkers是一个规模庞大的分布式无服务器网络,可以帮助客户在边缘处编写和部署自定义代码,而无需考虑基础架构或编程语言等繁琐事项。凭借Akamai平台的大容量、高可靠性和高安全性,客户可以在边缘处使用自定义代码实现动态流量路由、个性化响应等功能,并轻松扩展代码,借此打造更加个性化的数字体验。感兴趣的知友可点击 这里访问官网页面,进一步了解EdgeWorkers的功能和价值。

一些知友可能会好奇,检查POST body,这件事真有那么重要?为什么要检查?

很多情况下,检查POST body之后,即可根据需要执行各种后续操作。例如从传入的请求中提取GraphQL查询字符串并为其添加Header,随后只将自己真正需要看到的值组成的数组发送给源。借此即可在对GraphQL请求作出响应之前验证传入的请求。

本文将介绍如何通过EdgeWorker,使用PM(Property Manager)配置和一些高级MetaData来实现这个目标:根据传入的POST body对请求作出回应。

继续操作前需要注意:该方法不适合onClientRequest函数,因为这个函数会在提取POST body信息之前执行。

完整的操作方法如下。

一、Property Manager配置

在PM配置中,我们将使用一个变量和一些高级MetaData来提取POST body并将其放入Header中。之所以这么做,是因为EdgeWorkers目前还无法读取传入的POST body。

a.创建一个变量:

本例中,我们将该变量称之为BODYJSON。如果使用其他名称,请务必在下列高级MD代码片段中酌情替换对应的名称。

b.插入下列MetaData:

c.添加一个用于在EdgeWorker中捕获POST body的“Modify Outgoing Request Header”

相关设置如下图所示:

二、EdgeWorker

至此我们已经配置好了PM配置并将POST body注入了Header,随后还需要设置EdgeWorker。

这里需要注意,我们只能通过Edge > origin,Origin > edge and edge > client event handlers访问该Header。

我们可以使用如下的范例代码对JSON对象进行迭代并通过Header返回特定的键值。

至此,只要上传并激活该EdgeWorker,即可根据POST body对传入的请求执行操作了。

注意: 大家可能会观察到,我们会从Header而非变量中拉取Body。这是因为上述MD代码片段的执行需要耗费大量资源,因此我们只会针对未在父节点上设置变量的客户端请求(子节点)来运行。

在当今数字世界中,人们对于快速可靠的在线服务期望颇高。边缘计算为寻求满足这种期望的企业提供了竞争价值,因为它解锁了安全、可扩展的功能,提供了新的收入来源,并且为客户提供了更丰富的数字化体验。

作为传统的边缘服务提供商,Akamai最大的优势在于构建了一个涵盖全球,横跨各大运营商的智能边缘平台。通过将一致的边缘计算能力叠加在这个全球规模的智能边缘平台上,可以进一步优化客户体验,更加贴近客户需求。

本文介绍的小技巧,算得上借助Akamai边缘计算平台提供个性化体验的一个例子。而通过善用相关技术,广开“脑洞”,往往可以迸发出更多创新的火花。期待大家都能玩转并全面驾驭边缘计算,为自己的用户营造与众不同的数字体验。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1387577.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

20240115在ubuntu20.04.6下查看显卡信息

20240115在ubuntu20.04.6下查看显卡信息 2024/1/15 17:33 百度:ubuntu查看显卡型号命令 https://linux.xiaosiseo.com/post/6037.html#id4 Ubuntu查看显卡信息命令 小四LINUX7个月前 (05-22)Ubuntu3230 小四LINUX,是小四运营旗下网站,专注LIN…

Kubernetes (十三) 存储——持久卷-动静态分配

一. 简介 二. NFS持久化存储步骤(静态分配) 1. 集群外…

【翻译】Qt Designer 如何使用资源文件

原文地址:https://doc.qt.io/qt-6/designer-resources.html Qt的资源浏览器是用于管理应用程序资源的工具,可以让开发者方便地查看和管理应用程序中的各种资源文件,例如图像、字体、布局文件、对话框等。 资源浏览器提供了一个可视化的界面&…

leetcode 349 两个数组的集合

题目 给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1: 输入:nums1 [1,2,2,1], nums2 [2,2] 输出:[2] 示例 2: 输入&#xff1a…

uniapp 权限申请插件(权限使用说明) Ba-Permissions

简介(下载地址) Ba-Permissions 是一款权限申请插件,支持权限使用说明弹窗,满足市场审核需求。支持自定义权限申请,也支持快速申请定位、相机、媒体、文件、悬浮窗等常见权限。 支持权限使用说明弹窗,满足…

测试人,你还在写用例吗?是什么在支撑着你写?

测试交付的过程,通常是伴随的是一个测试用例生命周期过程,通常有测试需求分析、测试用例设计、测试用例实现、测试用例执行,以及测试用例管理等几个阶段组成。 为什么要有测试用例? 首先测试用例这是测试岗位的基本交付物之一。开…

Linux的网络文件共享服务之FTP服务

一.存储类型 1.1 存储类型分为三种 直连式存储:Direct-Attached Storage,简称DAS 存储区域网络:Storage Area Network,简称SAN(可以使用空间,管理也是你来管理) 网络附加存储:Net…

Ubuntu 22.04 安装Fail2Ban

Fail2Ban是一种用来防止暴力破解的工具,一般要和iptables配合使用。其原理是读取系统日志,并通过正则表达式匹配,监控IP在一段时间内的登录尝试、身份验证失败日志等并进行计数。超过阈值则进行IP封禁,过一段时间后再解封。 总的…

URL编码_解码详解

当 URL 路径或者查询参数中,带有中文或者特殊字符的时候,就需要对 URL 进行编码(采用十六进制编码格式)。URL 编码的原则是使用安全字符去表示那些不安全的字符。 安全字符:指的是没有特殊用途或者特殊意义的字符。 URL基本组成 …

java自动生成数据表相关代码

将数据表生成 mybatis 相关的实体类、接口和mapper文件 新建一个maven项目 在pom.xml文件中加入mysql驱动 <dependencies> <!-- mysql驱动--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifac…

【Vue3】3-2 : 组件的概念及组件的基本使用方式

本书目录&#xff1a;点击进入 一、组件的概念 1.1、【案例】评分组件与按钮组件的抽离过程 二、组件的使用 2.1、【案例】简易首页 &#xff1e; 效果 &#xff1e; 代码 - 原始 &#xff1e; ​​​​​​​代码 - 组件抽离结构 &#xff1e; ​​​​​​​代码…

在微服务架构中认证和授权的那些事儿

在微服务架构中认证和授权是最基础的服务能力&#xff0c;其中这一块行业类的标准就是OAuth2 和 SSO &#xff0c;而OAuth2 和 SSO 可以归类为“用户管理和身份验证”工具&#xff0c;OpenID Connect 1.0是 OAuth 2.0 协议之上的一个简单身份层。 Part.1 认识OAuth 2.0 OAuth…

ChatGPT Plus 经验分享:是否值得花钱升级?

ChatGPT Plus 经验分享&#xff1a;是否值得花钱升级&#xff1f; 五星上将麦克阿瑟曾经说过&#xff1a;“在有钱与没钱面前&#xff0c;我选择了or” ChatGPT 的每月订阅方案- ChatGPT Plus 已经推出一段时间了&#xff0c;目前的费用是$20 USD / 月(约TWD 610 / 月)。 Open…

【开源】类似创客贴图片编辑器的项目及前端组件

【开源】类似创客贴图片编辑器的项目及前端组件 图片拖拽 在线制作PPT等 yft-design: 基于fabric.js的图片设计&#xff0c;使用 Vue3 TypeScript fabric.js pinia element-plus pwa&#xff0c;支持 文字、图片、形状、线条、二维码 、条形码几种最常用的元素类型&#…

各类产业园区点位数据, Shp、excel数据,园区名称、类型、行业、批准时间均有所涉及

基本信息. 数据名称: 各类产业园区点位数据 数据格式: Shp、excel 数据时间: 2023年2月 数据几何类型: 点 数据坐标系: WGS84 数据来源&#xff1a;网络公开数据 数据字段&#xff1a; 序号字段名称字段说明1province省份名称2city城市名称3county区县名称4county…

训练官方源码RT-DETR(血泪的教训!严格按照官方流程!)

文章目录 参考链接1 配置环境2 配置数据路径3 配置训练参数4 可能的报错AttributeError: module torchvision has no attribute disable_beta_transforms_warning 参考链接 源码&#xff1a;https://github.com/lyuwenyu/RT-DETR详解RT-DETR网络结构/数据集获取/环境搭建/训练…

论文笔记(三十九)Learning Human-to-Robot Handovers from Point Clouds

Learning Human-to-Robot Handovers from Point Clouds 文章概括摘要1. 介绍2. 相关工作3. 背景3.1. 强化学习3.2. 移交模拟基准 4. 方法4.1. Handover Environment4.2. 感知4.3. 基于视觉的控制4.4. 师生两阶段培训 (Two-Stage Teacher-Student Training) 5. 实验5.1. 模拟评估…

代码随想录算法训练营第三十二天(回溯算法篇)|332. 重新安排行程

学习资料&#xff1a;代码随想录 (programmercarl.com) 332. 重新安排行程 题目链接&#xff1a;332. 重新安排行程 - 力扣&#xff08;LeetCode&#xff09; 题目大意 有一份航线列表 tickets &#xff0c;其中 tickets[i] [fromi, toi] 表示飞机出发和降落的机场地点。对…

2024年腾讯云服务器购买价格,真便宜

腾讯云服务器租用价格表&#xff1a;轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年&#xff0c;540元三年、2核4G5M带宽218元一年&#xff0c;2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月&#xff0c;云服务器CVM S5实例2核2G配置280.8元一年…

如何实现图片压缩

文章目录 1、canvas实现图片压缩2、其他 1、canvas实现图片压缩 canvas 实现图片压缩&#xff0c;主要是使用 canvas 的drawImage 方法 具体思路 拿到用户上传的文件转成base64创建一个 Image&#xff0c;主要是获取到这个图片的宽度和高度创建一个 2D 的画布&#xff0c;画布…