如下图1所示,要根据代码和编号两个值来查找对应的数量。 图1 有三种解决方案来实现目的: 1.连接关键值。此时,可以使用辅助列,也可以使用数组公式。 2.SUMIFS函数。...此时,返回的值必须是数字。 3.OFFSET函数。此时,如示例中的代码列排好序才能实现。...图3 使用SUMIFS函数 如果返回的值是数字,则可以使用SUMIFS函数。...,然后使用查找函数来查找相对应的值。...将上述两个返回值作为OFFSET函数的参数,返回要查找的单元格区域,作为VLOOKUP函数的参数,最后返回相对应的值。 当然,这样的公式也需要数值排序如示例一样。
随着监控基础设施的发展,您可能会遇到无法避免使用Zabbix API的情况。Zabbix API可以用于自动化日常工作流程的一部分,排除监控故障或简单地分析或获取有关特定实体集的统计信息。...在这篇博文中,我们将看看一些更高级的API方法和特定的方法参数,并学习如何使用它们来改进你的API工作流。 1. 使用CountOutput计数实体 首先收集一些统计数据。...非常重要的一点是要记住,为了让这个方法完全按照我们的意愿工作,我们需要包括指定配置字符串中包含的特定实体的行为的参数,例如项目/值映射/模板等。...Zabbix API提供了两个用于执行搜索的标准参数。...下面的API调用将在一个特定的模板上找到匹配代理和Zabbix键的项: { "jsonrpc": "2.0", "method": "item.get", "params": { "output": "
REST本身跟http无关,但是目前http是与它相关的唯一实例。REST有着优雅、简洁的特性,本文是根据豆瓣api来谈谈自己对restful的一些理解。...最好在api地址标明版本 比如 https://api.douban.com/v2 关于分隔符“/”,比如: "/"分隔符一般用来对资源层级的划分,比如: https://api.douban.com.../v2/book/1220562 表述了豆瓣api,version2下的图书仓库下的编号为1220562的图书。...把动作转换成资源 比如,上述接口中,用户收藏某本书对外暴露的接口是”/v2/book/:id/collection”,收藏动作通过post方法来展现,而不直接写着api中,collection “收藏...如果对外公开api,api文档的质量直接反应了一个公司的技术水平,甚至一个公司的文化气质。
可以利用JWT在各个系统之间安全地传输信息,JWT的特性使得接收方可以验证收到的内容是否被篡改。 本文讨论第一点,如何利用JWT来实现对API的授权访问。这样就只有经过授权的用户才可以调用API。...需要为还没有获取到JWT的用户提供一个这样的注册或者登录入口,来获取JWT。 获取到响应里的JWT后,要在后续的请求里包含JWT,这里放在请求的Authorization头里。 验证JWT ?...如果JWT是合法的,那么应该用同样的Payload来生成一个新的JWT,这样新的JWT就会有新的过期时间,用此操作来刷新JWT,以防过期。...如果使用Filter,那么刷新的操作要在调用doFilter()之前,因为调用之后就无法再修改response了。 API ? 这时候API就处于JWT的保护下了。...API可以完全不用感知到JWT的存在,同时也可以主动获取JWT并解码,以得到JWT里的信息。如上所示。
关于API漂移的详解 从根本上说,当API在功能、格式或结构方面承诺交付的内容(通常在API文档中说明)与它在运行时实际交付的内容不匹配时,API漂移就显而易见了。...这导致时间损失,有时需要额外的冲刺来排除故障并重新调整功能。开发人员花费宝贵的时间甚至几天来解决本可以通过清晰一致的API文档避免的问题。...模拟通过充当一致的API替代品来减少对后端开发的依赖,从而使前端团队能够在无需持续担心后端更改的情况下继续工作。...使用模拟的好处包括镜像预期的API结构: 数据结构的准确性和一致性: 使用模拟数据时,开发人员使用的数据结构精确地反映了声明的API。...模拟测试允许后端团队确认他们的输出是准确的,并且与前端开发人员测试他们自己的端点时所要求的一致。在处理遗留系统或外部供应商时,后端团队尤其受益于API模拟。
如果想学习Map的更多内容,参见The Java HashMap Under the Hood 一、Java API 方法1: 迭代方式 Java 集合框架的Map类提供了 entrySet()方法,...该方法的思路是,迭代Entry集合,当值和传入的value匹配时,返回对应的key。...因此我们找到匹配的值时需要将其加入到Set中,Set包含所有待查找的Key。...如果键值对的值已经存在map中,你调用put方法,将会移除旧的entry对象。换句话说,该类是依据值来更新键的。 另外,该功能需要大量内存来存放反向map。...我们要根据使用场景来选择最合适的方式。
使用go的routines和channel,可以充分利用多核处理器,提高高CPU资源占用计算的速度。...如下列计算π的值 package main import ( "fmt" "runtime" "time" ) var n int64 = 10000000000 var h float64...fmt.Printf("spend time: %vs\n", end.Sub(start).Seconds()) } 在我的2.6 GHz Intel Core i74核处理器下,Mac 10.8.3.../pi Pi: 3.141592653589691 spend time: 29.779854372s 执行过程中,cpu占用400%,说明已经充分利用现有CPU的处理性能。...可以看到用Go来进行并行计算还是比较方便的。
一种说法是栈空间归属线程,线程创建时会指定栈空间大小,所以必须关注临时变量的使用不能超过线程创建时指定的栈空间; 所以特地找了下pthread创建的线程api,通常填NULL的pthread_attr_t...当进程调用malloc等函数分配内存时,新分配的内存就被动态添加到堆上(堆被扩张);当利用free等函数释放内存时,被释放的内存从堆中被剔除(堆被缩减) 栈(stack):栈又称堆栈, 是用户存放程序临时创建的局部变量...除此以外,在函数被调用时,其参数也会被压入发起调用的进程栈中,并且待到调用结束后,函数的返回值也会被存放回栈中。由于栈的先进先出特点,所以栈特别方便用来保存/恢复调用现场。...中断栈:进程陷入内核态的时候,需要内核栈来支持内核函数调用。 进程栈是属于用户态栈,和进程 虚拟地址空间 (Virtual Address Space) 密切相关。...存储动态内存分配,匿名的内存映射 - 栈区 (Stack) : 进程用户空间栈,由编译器自动分配释放,存放函数的参数值、局部变量的值等 - 映射段(Memory Mapping Segment):任何内存映射文件
在vscode时新增proto文件时,按下sr会出现一个快捷生成CRUD服务的例子 srvcrud 然后再protoc生成时发现报如下错误: map/proto/service.proto:85:3:...protocolbuffers/protobuf/blob/master/src/google/protobuf/empty.proto 但下载这个库然后再protoc里加入proto_path后又发现报google.api.http...找不到的错。...,查看grpc-gateway网关的源码,发现在1.11.3版本后此方法被删除,怀疑是我本地版本过低的原因,但go install、go get好几次这个gateway的库也是这个错,无奈之下,只能手动在...go mod里面降级,不得不说,这里go mod的强大性就体现出来了,改个数字就能降级升级。
那我整点啥,那就来简介下今年火到爆的Flink。 开篇 那Flink到底是个啥,来我们来看下它官网的介绍。 ?...实际生产环境,现在主流都是ELK一套来管理log(我之前也大致介绍过),运维也不会直接把log往ES插,因为高峰期的时候 ES的写入速度并不快 可能会插崩它。...如果你看到了这里,实操之后,我们再回过头来解释下刚才的代码,再了解下flink是个啥。因为如果开篇就大肆介绍名词 简介,我感觉你们也不会看,因为感觉跟自己没啥关系。...我们看上述两个例子的代码,都是先读取一个文件流,然后用自定义的类来解析每行文本,然后第一个例子group就像你们sql中groupby 因为我把每行文本的level提取出来了,然后还有个计数,所以有个Tuple2...比如你可以消费kafka里的上报数据,kafka里的binlog数据,来实时计算比如一分钟的订单数啊,一分钟内的GVM啊等等之类。
作者:陈大鱼头 github:KRISACHAN 前言 鱼头曾在 『极限版』不掺水,用纯 CSS 来实现超飒的表单验证功能 一文中分享过一个花里胡哨的 纯 CSS 的表单验证功能 。...patternMismatch(只读) true / false 当表单元素输入的值与 pattern 属性的规则不匹配时为 true ,否则为 false 。...rangeOverflow(只读) true / false 当表单元素输入的值大于 max 属性时 为 true ,否则为 false 。...stepMismatch(只读) true / false 当表单元素输入的值与 step 的值不匹配 时为 true ,否则为 false 。...badInput(只读) true / false 当表单元素输入的值不完整且 UA 认为当前状态的表单不应该被提交时为 true,否则为 false。
JavaScript 代码经常需要操作URL,目前,Node和所有浏览器(除了IE)之外,都实现了URL类用于对其的操作,但它并不是ES标准定义的。这个类是在WHATWG中标准化的。...使用URL() 构造器函数创建URL对象时,可以传入1个绝对URL作为参数,也可以传入2个参数,第一个作为相对URL,第二个传入绝对URL作为base URL。...有意思的特性当 URL 路径或者查询参数中,带有中文或者特殊字符的时候,就需要对 URL 进行编码(采用十六进制编码格式)。URL 编码的原则是使用安全字符去表示那些不安全的字符。...当在 URL 中使用不属于 ASCII 字符集的字符时,就要使用特殊的符号对该字符进行编码,比如空格需要用%20来表示。...参考:URL编码/解码详解_睿科知识云的博客-CSDN博客_url解码URL - Web API 接口参考 | MDN
复制的动作还是会做的,执行changeInt(i)时,会将 i 复制到一个新的int上,传给changeInt方法,因此不管changeInt内部对入参做了什么,外面的 i 都不会受影响。...最后打印出来的还是1. 值传递和引用传递 上面提到的参数传递过程中的复制操作,说白了,就是 = 操作。...j的值,i不变 System.out.println(i); 对于基本数据类型,= 操作将右边的变量(R_VALUE)完整的复制给左边的变量(L_VALUE),而对于对象,准确的说,应该是指向对象的引用...这个 = 操作,是值传递和引用传递的根本差别,这也导致了值传递和引用传递有以下直观上的差别: 如果参数是值传递,那么调用者(方法体外部)和被调用者(方法体内部)用的是两个不同的变量,方法体里面对变量的改动不会影响方法体外面的变量...引用传递的替代方法 引用传递有两个好处: 引用传递可以避免调用方法时进行拷贝,尤其是当方法的入参是个大对象时,拷贝会耗费大量的时间和空间,当然,这一点Java已经巧妙地解决了,因为对于对象,拷贝的只是它的引用而已
System.out.println(column+" + "+value); } } 在输出时不能用System.out.format而要用System.out.println。
Vue3使用插槽时的父子组件传值 用法见官方文档深入组件章节,插槽部分: 参考文档:插槽-作用域插槽-插槽prop 作用域插槽 有时让插槽内容能够访问子组件中才有的数据是很有用的。...({ todoList: ['Feed a cat', 'Buy milk'] }) 在子组件插槽上定义需要传递的属性...,如上代码中的 item 和 index ; 子组件将子组件中定义的数据通过插槽属性传递给父组件; 父组件 useSlot.vue ...当使用具名插槽时 ......属性slotProps获取子组件传递过来的插槽属性 注意: 属性只能在插槽内部才能获取 具名插槽写法 演示 [%E6%8F%92%E6%A7%BD%E7%88%B6%E5%AD%90%E7%BB%84%
让我们来谈谈U.通用更新方法允许客户端更新资源的任何字段,然后使用新版本覆盖现有版本。但是,如果允许客户端执行这样的操作,您的服务API在其使用的任何底层数据存储之上,所能提供的价值其实是很小的。...DDD的思路是希望软件建模应该是基于解决现实世界的问题而去设计API。它创建了一种用于描述软件的语言,这种语言是基于被称为实体或聚合的关键的业务对象来描述软件的。...它还定义了比如服务(Services),值对象(ValueObject)和存储库(Repositories)之类的术语,它们共同解决特定业务领域中的问题,或者在DDD术语中被叫做“有界上下文(Bounded...在客户端,将变得更加的明确,什么操作可以执行,什么操作不可以执行。如果API文档记录的很好的话,例如使用Swagger来定义文档,那么每个API的限制(或约束)将变得非常明确。...因此不应该按照CRUD模型来构建你的serviceAPI(REST 或其他),而应该是使用DDD,DDD可以根据领域对象和可对其执行的业务操作来定义API。
做为一个前端码农,认识后端的 API 设计方式也是很重要的,今天让我们针对 API 设计来一探究竟。...目前讲的都是在规范中提到且建议的一般用法,实际服务器的 API 怎么开发依然是看实现的人;但通过语意化的方法去设计 API,绝对可以让 API 对开发者更加友好。...❞ SEO 当搜索引擎的爬虫在扫网站时,如果发现需要通过 POST 获取的资源,为了避免造成意外的行为或副作用,通常不会尝试爬取 POST 响应的结果。...例如在查找存在依赖关系的嵌套数据时,很有可能必须要经过多次请求想要才能找到想要的结果;而随着项目架构逐渐扩张,同一页面的资料也会越来越复杂,可能需要多个来源的资料才能堆砌出页面,这时候 RESTful...后记 本文的标题是我一位朋友去面试某大厂后端时的一道面试题,由这个题目引申出 HTTP 方法及主流的 RESTful API 设计风格,并对 GraphQL 做了简短的介绍,希望以上内容能够帮到你。
前言 那么借助的是那个api呢?...这里是为了方便测试,使用的是tags,如果是正式的那么应该使用releases; 内容 侧边公告栏 测试环境 async function request(url = '', method...} const response = await fetch(url, options) return response.json() } request('https://api.github.com...} const response = await fetch(url, options) return response.json() } request('https://api.github.com
Play Integrity API 我们曾推出独立的 API 来专门处理此类特定问题,比如 SafetyNet Attestation API 和 Google Play Licensing,每天帮助上千个应用处理对设备和用户账号的信任问题...Play Integrity API 有助于保护您的应用和游戏,使其免受可能存在风险的欺诈性交互 (例如欺骗和未经授权的访问) 的危害,让您能够采取适当措施来防范攻击并减少滥用行为。...我们已同一些开发者们紧密合作来测试这一 API,它已投入生产环境使用,来保护应用和游戏不被滥用。...API 会返回经过签名和加密的判定结果给应用,告知是否可以信任设备和二进制文件; 应用再将 Play Integrity API 返回的结果转发回应用服务器; 应用服务器会检查返回的 ID 与发送时的...注意事项 在使用 Play Integrity API 时,需要注意以下几点: 确认遇到的主要问题,是盗版问题,比如流量欺诈、作弊,还是其他问题。
高德的API来查询行政区域查询 1.api接口文档地址 https://lbs.amap.com/api/webservice/guide/api/district GET https://restapi.amap.com...keywords=万宁&subdistrict=1&key=APIKEY&extensions=base 2.根据高德解析出来的城市名称 然后匹配一下 这份excel表格,获取cityCode,弊端是新增了城市编码