首页 > 编程语言 >RESTful编程到底是什么?

RESTful编程到底是什么?

时间:2023-10-17 21:35:41浏览次数:32  
标签:请求 GET 编程 item myserver 到底 RESTful

内容来自 DOC https://q.houxu6.top/?s=RESTful编程到底是什么?

RESTful编程到底是什么?


RESTful编程到底是什么?

一种称为REST(表述性状态转移)的架构风格主张Web应用程序应该像最初所设想的那样使用HTTP。查找应该使用GET请求。PUTPOSTDELETE请求分别用于变更创建删除

REST支持者倾向于喜欢URL,例如:

http://myserver.com/catalog/item/1729

但是REST架构并不要求这些"漂亮的URL"。带有参数的GET请求

http://myserver.com/catalog?item=1729

与RESTful一样。

请记住,永远不应该使用GET请求来更新信息。例如,向购物车中添加商品的GET请求

http://myserver.com/addToCart?cart=314159&item=1729

是不合适的。GET请求应该是幂等的。也就是说,发出两次请求应该与发出一次相同。这就是使请求可缓存的原因。“添加到购物车”请求不是幂等的—发出两次会将两个副本的物品添加到购物车中。在这种情况下,POST请求显然是适当的。因此,即使是RESTful Web应用程序也需要它的一些POST请求。

这是来自David M. Geary的优秀书籍《Core JavaServer faces》中的摘录。

标签:请求,GET,编程,item,myserver,到底,RESTful
From: https://www.cnblogs.com/xiaomandujia/p/17770745.html

相关文章

  • Python神经网络编程pdf电子版 Tariq Rashid
    Python神经网络编程pdf电子版TariqRashid作者:[英]TariqRashid原作名:MakeYourOwnNeuralNetwork出版年:2018-4ISBN:9787115474810连接提取码:c75z本书对初学者极为友好,并且篇幅短小精悍,概念讲解明晰易懂,很适合作为神经网络入门第一书。书中作为例子实现的神经网......
  • 实验一 类与对象_基础编程1
    task1.cpp1#include<iostream>2#include<string>3#include<vector>4#include<array>56template<typenameT>7voidoutput1(constT&obj){8for(autoi:obj)9std::cout<<i<<","......
  • 极限编程
    极限编程(ExtremeProgramming,简称XP)是一种敏捷软件开发方法,旨在改善软件开发项目的质量和效率。XP强调迭代开发、持续反馈和高度协作,以便快速适应需求的变化。以下是XP的一些关键特点:用户故事(UserStories):XP使用用户故事来描述应用程序的功能,这有助于开发团队更好地理解客户需......
  • Java编程之道:巧妙解决Excel公式迭代计算难题
    本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。什么是迭代计算迭代计算其实是在Excel中,一种公式的循环引用,对于了解编程概念的同学,很容易会想到另一个词“递归”。简单的说,就是一段程序调用自己,......
  • 【Java 并发编程】synchronized
    synchronized关键字synchronized是Java中的一个关键字,翻译成中文是同步的意思,主要解决的是多个线程之间访问资源的同步性,可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行。使用方法修饰实例方法给当前对象实例加锁,进入同步代码前要获得当前对象实例的锁......
  • 【Java 并发编程】ReentrantLock
    目录ReentrantLock公平锁和非公平锁synchronized和ReentrantLock有什么区别?ReentrantLockReentrantLock是一个可重入的互斥锁,又被称为“独占锁”。ReentrantLock类实现了Lock,它拥有与synchronized相同的并发性和内存语义,但是添加了类似锁投票、定时锁等候和可中断锁等......
  • 【Java 并发编程】ThreadLocal
    目录ThreadLocalThreadLocal实现线程隔离的原理ThreadLocal内存泄漏场景ThreadLocalThreadLocal是一个将在多线程中为每一个线程创建单独的变量副本的类;当使用ThreadLocal来维护变量时,ThreadLocal会为每个线程创建单独的变量副本,避免因多线程操作共享变量而导致的数据不......
  • 神经网络入门篇:神经网络到底是什么东西
    神经网络到底是什么东西我们常常用深度学习这个术语来指训练神经网络的过程。有时它指的是特别大规模的神经网络训练。那么神经网络究竟是什么呢?举例说明-通俗易懂第一个例子从一个房价预测的例子开始讲起。假设你有一个数据集,它包含了六栋房子的信息。所以,你知道房屋的面......
  • 【Java 并发编程】LockSupport
    目录简介方法介绍阻塞和唤醒示例示例1示例2示例3阻塞对象blocker的作用和显式锁、隐式锁等待唤醒的区别简介java.util.concurrent.locks.LockSupport是一个工具类,提供了基本的线程阻塞和唤醒功能,它是创建锁和其他同步组件的基础工具,内部是基于sun.misc.Unsafe类实现的。Lo......
  • 编程到底难在哪里?
    大家好,我是陶朱公Boy,一个认真生活,总想超越自己的程序员。前言知乎上有一个提问:编程到底难在哪里?↓↓↓今天,我们就这个话题,一起来做个讨论。首先调研一下,程序员的你,觉得编程难吗?如果觉得难,那到底难在哪里?有哪些地方,是你觉得自己在目前的工作或学习中,自己尚有欠缺的,需要花时......