首页 / 知识
关于不可知的语言:如何在RESTful Web服务中响应备用URI
2023-04-13 11:08:00

How to respond to an alternate URI in a RESTful web service我正在构建一个RESTful Web服务,该服务的其中一个资源具有多个URI,因为存在多个唯一标识符。服务器应该通过返回资源来响应备用URI的GET请求,还是应该将HTTP 3xx重定向发送到规范URI? HTTP 303(另请参见)是最合适的重定向吗? 说明:HTTP规范明确指出,重定向的选择取决于将来的请求应使用哪个URI。在我的应用程序中,"规范" URI是最稳定的选择。替代URI将始终直接指向相同的规范URI,或者变为无效。 我个人很想返回资源,而不是忙于重定向,尽管我怀疑这仅仅是因为我的潜意识告诉我重定向速度较慢。 但是,如果您决定使用重定向,我认为302或307可能比303更合适,尽管w3.org包含您可以使用的不同重定向代码的详细信息。 在W3C的万维网架构,第一卷中,有关于URI别名的部分(第2.3.1节),其内容如下: "当URI别名确实成为通用货币时,URI所有者应使用诸如服务器端重定向之类的协议技术来将这两个资源相关联。当URI所有者支持将别名URI重定向到相应的"官方"时,社区会受益。" URI。有关重定向的更多信息,请参阅RFC2616中的10.3节"重定向"。另请参阅CHIPS,以获取有关服务器管理员的一些最佳实践的讨论。" 对于它的价值,我建议您使用302重定向。 我从Ubiguchi那里得到的答案是我所需要的,除了我现在认为通过指向响应代码的HTTP 1.1规范部分的链接,重定向是必经之路。事实证明,我实际上需要301重定向,因为重定向到的URI更"正确"且更稳定,因此应用于以后的请求。 |
最新内容
相关内容
Python语言自带的数据结构有哪些
Python语言自带的数据结构有哪些,异常,数字,数据,元素,序列,培训,位置,名称,分析,括号,Python作为一种脚本语言,其要求强制缩进,使其易读、美观Python变量的类型(弱类型语言)
Python变量的类型(弱类型语言),检测,代码,数据,培训,类型,变量,语言,赋值,数字型,字符串,在强类型的编程语言中,定义变量时要指明变量的类型,而Python语言
Python语言,工作,代码,标准,系统,庞大,密码,培训,管理,发展,数据,Python是一种解释型、面向对象、动态数据类型的高级程序设计语言,具有20多年解释型语言python和编译型语言
解释型语言python和编译型语言,平台,环境,培训,语言,程序,文件,机器码,效率,定义,操作系统,首先Python是一门解释型语言,计算机是不能识别高python支持r语言吗?
python支持r语言吗?,代码,名称,培训,官网,第一,语言,对象,字符串,方法,后缀,python中可以支持r语言。python提供了一个模块rpy2,可以较好地完python是一种编程语言吗?
python是一种编程语言吗?,放宽,适当,平台,培训,语言,指令,计算机,机器,程序,解释性,python是一种编程语言,Python是一种跨平台的计算机程序设计Python语言中mod表示什么意思
Python语言中mod表示什么意思,环境,培训,表示,语言,结果,负数,语法,符号,两者,规律,python语言中mod表示取模运算符。语法MOD(a,b)通常情况下Python语言专题
Python语言专题,名字,工作,代码,异常,培训,信息,空间,函数,变量,模块,名字空间python使用叫做名字空间的东西来记录变量的轨迹.名字空间只是python到底是什么样的语言
python到底是什么样的语言,教育,软件,人工智能,培训,代码,简介,语言,类型,程序,动态,python是一种面向对象、解释型、动态类型计算机程序设计python语言受欢迎吗
python语言受欢迎吗,代码,工作,业务,活跃,设计,发展,人工智能,培训,数据,语言,python因其简单易用的语法而获得了很多赞誉。该语言强调代码的pythonc语言取余和python取余的区
pythonc语言取余和python取余的区别,培训,资料,语言,负数,区别,被除数,符号,除数,规定,余数,今天看书发现python与C的负数取余运算结果不同,python http服务怎么搭建
python http服务怎么搭建,服务,培训,环境,进程,命令,端口,后台,不是,终端,开头,在Linux服务器上或安装了Python的机器上,Python自带了一个WEB