首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

GET不需要方法吗?如果是这样的话,不写是很常见的吗?

GET是HTTP协议中的一种请求方法,用于从服务器获取资源。在RESTful架构中,GET方法用于获取资源的表示形式,而不会对服务器产生任何副作用。GET方法是幂等的,即多次请求同一个资源的结果应该是相同的。

GET方法的特点包括:

  1. 安全性:GET方法只用于获取资源,不会对服务器产生任何修改或副作用,因此被认为是安全的。
  2. 幂等性:多次请求同一个资源的结果应该是相同的,不会对服务器状态产生影响。
  3. 可缓存性:GET请求的结果可以被缓存,以提高性能和减少网络流量。

在实际开发中,GET方法是最常见的请求方法之一,常用于获取网页、图片、视频等静态资源。在浏览器中,当我们在地址栏输入网址或点击链接时,通常会发送GET请求来获取网页内容。

对于不需要指定方法的情况,通常是因为在某些场景下,请求的方法已经被默认为GET方法。例如,当我们在浏览器中直接输入网址时,默认使用GET方法来获取网页内容。此外,一些HTTP库或框架在发送请求时,默认使用GET方法。

虽然不写方法是很常见的,但在实际开发中,为了代码的可读性和明确性,建议明确指定请求方法,尤其是在涉及到对服务器产生修改或副作用的请求时,如POST、PUT、DELETE等。

相关搜索:GNOME Shell扩展可以移动指针吗?如果是这样的话,是怎么做的?C#接口可以实现列表或数组吗?如果是这样的话,是怎么做的?Swift:我能知道一个函数是否是一个方法吗?如果是这样的话,我能知道它的目的吗?Laravel:可以在数据库字段中存储对象吗?如果是这样的话,是怎么做的?React Redux: useDispatch可以用来连接动作创建者吗?如果是这样的话,是怎么做的?我应该使用存储库模式来更新单个字段吗?如果是这样的话,是怎么做的?PHP对象的属性可以是数组吗?如果是这样的话,我该如何从对象中添加呢?我可以用haskell中的无点符号编写lambda函数吗?如果是这样的话,是怎么做的?我可以通过firebase cloud functions Admin SDK访问twitter身份验证数据吗?如果是这样的话,是怎么做的?谷歌附近的API可以免费使用吗?如果是这样的话,如果你超过了每天864万的限制怎么办?Ruby on Rails:我应该把这段代码移到模型中吗?如果是这样,最好的方法是什么?如果我在LHS中添加括号,同时一次分配多个变量,会有什么不同吗?如果是这样的话,是怎么做的?为什么?我想使用selenium自动化web应用程序的音频/视频调用。这是可能的吗?如果是这样的话,有人能分享一些见解或想法吗?是否可以将JSON存储在MySQL数据库表字段中?这对我来说是个好主意吗?如果是这样的话,是如何做到的呢?
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

70%的Java程序员不知道为啥 ConcurrentHashMap 读操作不需要加锁?

作者:上帝爱吃苹果 目录 ConcurrentHashMap的简介 get操作源码 volatile登场 是加在数组上的volatile吗?...,基于长度很长的链表的遍历是一个很漫长的过程,而红黑树的遍历效率是很快的,代替一定阈值的链表,这样形成一个最佳拍档 get操作源码 首先计算hash值,定位到该table索引位置,如果是首节点符合就返回...如果遇到扩容的时候,会调用标志正在扩容节点ForwardingNode的find方法,查找该节点,匹配就返回 以上都不符合的话,就往下遍历节点,匹配就返回,否则最后就返回null //会发现源码中没有一处加了锁...= null && key.equals(ek)))) return e.val; } } return null; } get没有加锁的话,ConcurrentHashMap是如何保证读到的数据不是脏数据的呢...get操作全程不需要加锁是因为Node的成员val是用volatile修饰的和数组用volatile修饰没有关系。 数组用volatile修饰主要是保证在数组扩容的时候保证可见性。

35330

Java 经典面试题:为什么 ConcurrentHashMap 的读操作不需要加锁?

来源:http://tinyurl.com/y685vvv9 目录: ConcurrentHashMap的简介 get操作源码 volatile登场 是加在数组上的volatile吗?...,基于长度很长的链表的遍历是一个很漫长的过程,而红黑树的遍历效率是很快的,代替一定阈值的链表,这样形成一个最佳拍档 ?...img get操作源码 首先计算hash值,定位到该table索引位置,如果是首节点符合就返回 如果遇到扩容的时候,会调用标志正在扩容节点ForwardingNode的find方法,查找该节点,匹配就返回...在多处理器下,为了保证各个处理器的缓存是一致的,就会实现缓存一致性协议,当某个CPU在写数据时,如果发现操作的变量是共享变量,则会通知其他CPU告知该变量的缓存行是无效的,因此其他CPU在读取该变量时,...get操作全程不需要加锁是因为Node的成员val是用volatile修饰的和数组用volatile修饰没有关系。 数组用volatile修饰主要是保证在数组扩容的时候保证可见性。

1.7K20
  • 为什么 ConcurrentHashMap 的读操作不需要加锁?为什么 ConcurrentHashMap 的读操作不需要加锁?

    来源:cnblogs.com/keeya/p/9632958.html ConcurrentHashMap的简介 get操作源码 volatile登场 是加在数组上的volatile吗?...---- 我们知道,ConcurrentHashmap(1.8)这个并发集合框架是线程安全的,当你看到源码的get操作时,会发现get操作全程是没有加任何锁的,这也是这篇博文讨论的问题——为什么它不需要加锁呢...,基于长度很长的链表的遍历是一个很漫长的过程,而红黑树的遍历效率是很快的,代替一定阈值的链表,这样形成一个最佳拍档 ?...get操作源码 首先计算hash值,定位到该table索引位置,如果是首节点符合就返回 如果遇到扩容的时候,会调用标志正在扩容节点ForwardingNode的find方法,查找该节点,匹配就返回 以上都不符合的话...get操作全程不需要加锁是因为Node的成员val是用volatile修饰的和数组用volatile修饰没有关系。 数组用volatile修饰主要是保证在数组扩容的时候保证可见性。

    45420

    Java异步编程——深入源码分析FutureTask

    很容易看出来,异步编程的好处就在于可以让不相干的任务异步执行,不阻塞主线程。若是主线程需要异步执行的结果,此时再去等待结果会更加高效,提高程序的执行效率。 下面来看看整个流程的实现原理。...相类似的还有Runnable,它也是不接收,不同点在于它不返回结果,也不抛异常,异常需要在任务内部处理。总结来说Callable更像一个方法的调用,Runnable则是一个不需要理会结果的调用。...原来接口只接收Callable参数,实现类中还新增了接收Runnable参数的。 如果看过之前写的《你真的懂ThreadPoolExecutor线程池技术吗?...但这样并没有异步的效果,因为没有启用新的线程去跑,而是在原来的线程阻塞执行的。...如果状态是NORMAL,正常结束的话,则把outcome变量返回; 如果是取消或者中断状态的,则抛出取消异常; 如果是EXCEPTION,则把outcome当作异常抛出(之前setException()

    60830

    想做算法,你需要哪些条件?

    结果你面的10份简历里面有9个完全不能看,但是出于职业素养以及面试礼仪,你必须要聊完一个小时或者是一个半小时,你会是什么心态?是不是很抓狂,很多人真遇到了估计肯定要投诉hr了,难道不会筛选一下吗?...如果你的砖头本身比较脆,不结实,那你就需要多找点额外的材料修补修补,有些人的砖头本身很过硬,可能不需要太多的修补也能把门敲开。现在的确海归很多,名校出身的人也不少,显得竞争压力很大。...第二部分则是对应的领域必须会用到的模型,比如说如果是推荐领域,那么FM、DIN这类必不可少,如果是CV呢,那么各种CNN也是必须的,如果是NLP,显然离不开LSTM、RNN。...写几个特征、训练一下模型是简单的大部分人都会,但是基于场景结合数据、模型深度思考,推导出完整的提升逻辑则要困难得多。...新的模型,新的方法,新的策略层出不穷,只会闭门造成肯定是不行的,我们需要有强大的学习能力以及学习意识。需要看得懂最新的论文,撸得出最新的模型,能够进行严谨的实验和分析。

    99410

    【RTOS训练营】环形缓冲区、AT指令、预习安排和晚课提问

    另外,如果是直接溢出,也是可行,不过只能是指定长度,不实用。...这样的话我们不好写程序判断,所以就退一步,满:下一个写位置 == r 我在写数据之前先判断一下: 下一个写的位置, 是不是等于读的位置, 如果下一个写的位置等于读的位置的话, 我就假设满了, 我宁愿空出一个空位...问: 环形缓冲区操作中,不用做互斥吗?只能一对一? 答: 对环形缓冲区,如果说只有一个消费者(读数据)、只有一个生产者(写数据)的话,就不需要做互斥操作。...因为你分配了100兆的空间,我就跟你说:突然要来1000兆的数据, 你分配了1000兆的空间,我就跟你说:突然要来1T的数据。 绝对的、保证数据不丢失的方法是没有的。...根据这个count变量来分辨是空还是满,这样的话,这个环境缓冲区,满的时候就是真正的满了。 12. 问: 程序里面是什么条件的时候读缓冲区?

    1K40

    Java反射

    我们先把模型建立起来,如下图所示,是小兵的模型 ? 鲁班:你上次说了,写业务代码的时候要考虑通用性和可扩展性,但是这个功能也能用反射吗?...这里用反射获取到属性的get 方法,然后调用get 方法获取属性值,和预期值做比较,这里 getReadMethod 方法为了方便说明做了简化,很多情况没写进入,比如属性是boolean 类型,get方法前缀是...鲁班:这二个方案都是判断 batman(小兵)身上带的 rune(符文)是不是红色,如果是红色,就开火。但是新方案用了反射,有什么优势吗?...鲁班:你的意思是业务需求这么变,我用反射做了通用性功能,可以不需要重复写代码吗? 安琪拉: 对呀。到时候你可以抽更多时间来研究?的技能。...鲁班:既然都说到这个份上了,能给写段代码吗?干说不练假把式 安琪拉: 好的,如下图代码所示,这套带有规则的反射可以应付来自产品各种花样需求了。 ? 鲁班:那规则表和条件表我都建在数据库吗?

    77020

    面渣逆袭:Java集合连环三十问

    大家好,我是老三。上期发布了一篇:面渣逆袭:HashMap追魂二十三问,反响很好! 围观群众纷纷表示 不写,是不可能不写的,只有卷才能维持了生活这样子。...为什么最ArrayList不直接序列化元素数组呢? 出于效率的考虑,数组可能长度100,但实际只用了50,剩下的50不用其实不用序列化,这样可以提高序列化和反序列化的效率,还可以节省内存空间。...这样是要快捷一些,但是新的问题来了,就算散列值分布再松散,要是只取最后几位的话,碰撞也会很严重。如果散列本身做得不好,分布上成等差数列的漏洞,如果正好让最后几个低位呈现规律性重复,那就更难搞了。...除此之外,还有这几种常见的哈希函数构造方法: 直接定址法 直接根据key来映射到对应的数组位置,例如1232放到下标1232的位置。...value是volatile的,所以get是不需要加锁的。

    69820

    40+个对初学者非常有用的PHP技巧(一)

    今天我们要介绍一些关于改善和优化PHP代码的提示和技巧。请注意,这些PHP技巧适用于初学者,而不是那些已经在使用MVC框架的人。 ? 1.不要使用相对路径,要定义一个根路径 这样的代码行很常见: ?...不需要任何更多的解释。 你还可以进一步改善: ? 这样做可以完成很多事情: 为同一个类文件搜索多个目录。 轻松更改包含类文件的目录,而不破坏任何地方的代码。...在开发计算机上,你可以这样做: ? 并且在服务器上,你可以这样做: ? 4.通过会话传播状态消息 状态消息是那些执行任务后生成的消息。 ? 这样的代码很常见。使用变量来显示状态信息有一定的局限性。...因为它们无法通过重定向发送(除非你将它们作为GET变量传播给下一个脚本,但这非常愚蠢)。而且在大型脚本中可能会有多个消息等。 最好的办法是使用会话来传播(即使是在同一页面上)。...想要这样做的话在每个页面上必须得有一个session_start。 ? 在你的脚本中: ? 5.让函数变得灵活 ? 当添加单一条目时,使用上面的函数。那么当添加多个条目时,就得创建另一个函数吗?

    98520

    40+个对初学者非常有用的PHP技巧(一)

    今天我们要介绍一些关于改善和优化PHP代码的提示和技巧。请注意,这些PHP技巧适用于初学者,而不是那些已经在使用MVC框架的人。 ? 1.不要使用相对路径,要定义一个根路径 这样的代码行很常见: ?...不需要任何更多的解释。 你还可以进一步改善: ? 这样做可以完成很多事情: 为同一个类文件搜索多个目录。 轻松更改包含类文件的目录,而不破坏任何地方的代码。...在开发计算机上,你可以这样做: ? 并且在服务器上,你可以这样做: ? 4.通过会话传播状态消息 状态消息是那些执行任务后生成的消息。 ? 这样的代码很常见。使用变量来显示状态信息有一定的局限性。...因为它们无法通过重定向发送(除非你将它们作为GET变量传播给下一个脚本,但这非常愚蠢)。而且在大型脚本中可能会有多个消息等。 最好的办法是使用会话来传播(即使是在同一页面上)。...想要这样做的话在每个页面上必须得有一个session_start。 ? 在你的脚本中: ? 5.让函数变得灵活 ? 当添加单一条目时,使用上面的函数。那么当添加多个条目时,就得创建另一个函数吗?

    89230

    数字IC设计验证-秋招指南

    最后的重中之重,跨时钟域的概念是什么,什么情况算跨时钟域,什么情况不算跨时钟域,跨时钟不处理会发生什么,什么情况下可以不处理,常见的跨时钟域方法有哪些,快到慢,慢到快,多bit,单bit这些分别应该怎么处理...,这样很容易在面试中落得下风,另一方面本身验证就是设计,设计就是验证,只是从不同的角度去解读SPEC,对设计的理解当然是多多益善。...如何把接口传递到环境中 configdb机制的作用是什么,如何使用,set以后一定要get吗?什么情况下可以不get?...如果是转行的同学,不要避讳的专业,直接大大方方写出来,没有项目经历的话哪怕是自己做的小模块也可以写上去,实在没有,培训班的经历也可以写。...set,在哪里get,这样你从interface的概念到动机到configdb再到使用方法,全都讲了一遍,拉高面试官对你的印象。

    1.5K21

    不要再滥用可选链运算符(?.)啦!

    ,导致页面没有任何反应,js不抛错,console也没有log,后续流程出错了,这时候如果想找原因就会很困难,对代码熟悉还行,如果不是自己写的就只能看代码捋逻辑,如果是生产环境压缩混淆了就更难排查了。...但并不是说一点都不用,意思是尽量减少滥用,这样使用的频率会少很多,这种编译代码沉余也会少不少。 应该怎么用? 说了这么多,.? 应该怎么用呢?意思是不用吗?...,不要用; 某些方法或者组件里,参数和属性不允许是空值,那方法和组件里就不需要判断非空。...api.get(id).then(...) // 这个api如果id是空值,则api会抛错 当然,写代码时还得多想一下属性是否可能是空值,会一定程度的影响开发效率,也一定有开发会觉得很烦,不理解,无脑写...想想在这个新特性出来之前大家是怎么写的,会对每个变量和属性都加if非空判断或者用逻辑与(&&)吗?不会吧。 小结 本文以一个 code reviewer 角度,分析了 可选链运算符(?.)

    45240

    从今天起让我们忘记Java中的getset方法吧!

    曾几何时,我们写代码的时候,每次写Bean的时候都会使用快捷键生成get/set方法,有时候我经常会想,既然每一个Bean我们都会给其提供get/set方法,那么为什么还有会这个东西哪?...一些思考 看到这里,很多人要说了,我使用的要么是SSM框架,要么是SSH框架,这些框架都可以使用逆向工程的方式生成我们的代码,当然包括Bean,我们在使用逆向工程的时候,get/set方法不都是自动生成的吗...使用这个Lombok尽管优美,我们还不是需要进行自己写注解的吗? 首先,我们先聊一下最近一个比较火的领域驱动设计中的贫血、失血、胀血和充血模型。 什么是贫血失血充血模型呢?...图:领域驱动的一种使用模式 因此对于一个充血模型的领域驱动实体对象来说,他不但有属性还有他的各种方法,如果整个的都放在一个类里的话根本不好区分他到底是get/set方法还是其他功能方法,这里我们使用Lombok...当然,我们也可以在开源项目的基础上进行修改的,这样的话更加容易一些!常见的有mybatis-plus提供的一个代码生成工具,可以参考!

    48420

    iOS 开发面试通关指南:67 个必知问题!

    这没关系,没人会要求我们记住一切知识点……但如果是面试的话那就不一样了。 作为一名面试官,面试可能也不是那么简单的。你想为公司招募一个非常适合你们团队的人,但你没有太多时间去了解对方。...我认为这并不是什么严肃的问题——如果你不喜欢参加,并不能代表你是一个糟糕的开发者,你可能只是内向而已。但是,如果你可以在那种会议上为公司做宣传,或者发表个演讲的话,那公司是会很喜闻乐见的。...如果你写Swift代码已经有一段时间了,那至少要使用过一次lazy property,这样才能更好地了解它的优点和缺点。 11.什么是optional?其背后的机制是什么?...29.如何管理代码中的依赖(dependency)?你是使用依赖注入框架/工具,还是手动进行?或者你只使用单例(singleton)? 30.什么是REST?POST和GET方法有什么区别?...这题不会也没关系,但是如果知道会很加分! 35.如何允许不安全的连接?这是可行的吗?能通过应用审查吗?知道什么说什么就行——例如,可以谈谈在什么情况下是可以做到这一点的。

    1.2K20

    不要再滥用可选链运算符(?.)啦!

    ,导致页面没有任何反应,js不抛错,console也没有log,后续流程出错了,这时候如果想找原因就会很困难,对代码熟悉还行,如果不是自己写的就只能看代码捋逻辑,如果是生产环境压缩混淆了就更难排查了。...但并不是说一点都不用,意思是尽量减少滥用,这样使用的频率会少很多,这种编译代码沉余也会少不少。 应该怎么用? 说了这么多,.? 应该怎么用呢?意思是不用吗?...,不要用; 某些方法或者组件里,参数和属性不允许是空值,那方法和组件里就不需要判断非空。...api.get(id).then(...) // 这个api如果id是空值,则api会抛错 当然,写代码时还得多想一下属性是否可能是空值,会一定程度的影响开发效率,也一定有开发会觉得很烦,不理解,无脑写...想想在这个新特性出来之前大家是怎么写的,会对每个变量和属性都加if非空判断或者用逻辑与(&&)吗?不会吧。

    34820

    从今天起让我们忘记Java中的getset方法吧!

    曾几何时,我们写代码的时候,每次写Bean的时候都会使用快捷键生成get/set方法,有时候我经常会想,既然每一个Bean我们都会给其提供get/set方法,那么为什么还有会这个东西哪?...一些思考 看到这里,很多人要说了,我使用的要么是SSM框架,要么是SSH框架,这些框架都可以使用逆向工程的方式生成我们的代码,当然包括Bean,我们在使用逆向工程的时候,get/set方法不都是自动生成的吗...使用这个Lombok尽管优美,我们还不是需要进行自己写注解的吗? 首先,我们先聊一下最近一个比较火的领域驱动设计中的贫血、失血、胀血和充血模型。 什么是贫血失血充血模型呢?...图:领域驱动的一种使用模式 因此对于一个充血模型的领域驱动实体对象来说,他不但有属性还有他的各种方法,如果整个的都放在一个类里的话根本不好区分他到底是get/set方法还是其他功能方法,这里我们使用Lombok...等任何我们需要的代码: 当然,我们也可以在开源项目的基础上进行修改的,这样的话更加容易一些!

    3.1K91

    Doug Lea在J.U.C包里面写的BUG又被网友发现了。

    他说 FutureTask#isDone 方法现在是这样写的: ? 他觉得从源码来看,是只要当前状态不等于 NEW(即不等于0)则返回 true,表示任务完成。 ? 他觉得应该是这样写: ?...但是吧,我也觉得我们在讨论的是一个非常细节,非常小的问题,我不知道,就算现在这样写,会导致任何问题吗?...标号为 ② 的地方是判断当前任务是否是完成状态,如果是,则继续往下。 标号为 ③ 的地方是先中断当前线程,然后调用 get 方法获取任务结果。...他要表达的意思,我理解的是这样的: 在 j.u.c 包里面,优先检查线程中断状态是很常见的操作,因为相对来说,会导致线程中断的地方非常的少。 但是不能因为少,我们就不检查了。...那个时候他的主意就是:大佬都说了,这样写是考虑过的,肯定没有问题。 现在他的主意是:如果 isDone 方法返回了 true,那么 get 方法应该明确的返回结果值,而不会抛出 IE 异常。

    67431

    还有这种操作,可以让装饰器为所欲为?

    今天是Python专题的第14篇文章,我们继续装饰器的话题,来看看怎么给装饰器包装方法,实现更多灵活的操作。...不仅仅如此,类也一样可以通过setattr方法设置。 理解了setattr和getattr的用法之后,我们不禁有一个问题,我们通过.操作不香吗,为什么还要搞一个setattr和getattr出来呢?...如果我们自己写代码写着玩,当然是用.操作更方便,但如果是实际的开发场景。很有可能我们需要添加的属性的名称是从别的地方获取的,而不是写死的,也就是说是可配置的。...最常见的场景就是区分线上和测试环境,一种做法是在接口的名字之前加上一个标识,比如线上是online,测试环境是test或者是dev。通过这种方法区分不同环境的逻辑。...方法中的逻辑放入了装饰器当中,只要我们需要,我们还可以写出其他的方法,来自定义我们对装饰器的需求,而又不需要修改装饰器内部的逻辑。

    1.1K30

    新年 Flag 以及论坛的一个所谓 Kotlin 不完全兼容 Java 的问题

    原帖结束 ---- 看到这个问题,突然觉得以前大家写 Java 代码,得是有多乱,人家明明就已经有了 message,你再继承,再搞出一个来,到底是为什么呢。。。...题主说有可能是第三方 SDK 这样,没有办法修改源码,怎么办? 当然是去找到 SDK 的开发者当面 diss 啊。...} 这个与绝大多数合成属性的情况还不一样,如果是合成的属性,通常我们也可以直接访问对应的 get/set 方法。...实际上我们自己定义的类如果不继承存在 Kotlin 到 Java 映射关系的类型,几乎不会遇到类似的问题。 3. 真的没有办法通过 Kotlin 实现访问吗?...这个访问的过程实际上也没有什么额外的开销,尽管看上去似乎用了反射,但根本不需要引入反射包,实际上也不会通过反射进行访问。

    91810

    MVP:Android guidelines

    另外你需要面对常见的Android问题如Activity生命周期,然后你还应该问问自己下面这些问题: 我应该保存presenter的状态吗? 我应该将presenter做持久化处理吗?...在本文中,我将提供一系列准则或最佳做法,以便: 解决采用这个架构遇到的最常见问题(至少是一些我遇到过的) 发挥这个架构的最大优势 首先,让我们先解释一下这个模式: ?...presenter用纯java代码实现的两个理由:首先你要将具体的实现抽象到presenter中,这样的话你就可以写不依赖于设备的测试代码了(甚至都不需要Robolectric),可以快速的在你的本地JVM...一些人认为应该写一个Presenter接口因为你要将具体的presenter和view解耦。 然而另外一些开发者认为你在抽象的东西已经是一个抽象的了所以不需要再写一个接口了。...另外不管怎么样,有了一个接口后可以帮你方便的写mock presenter,不过如果你采用了Mockito这样的工具类那么你就不需要接口了。

    36730
    领券