首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    RESTful规范

    §422 Unprocesable entity - [POST/PUT/PATCH] 当创建一个对象时,发生一个验证错误。...状态码的完全列表参见这里 URI失效 随着系统发展,总有一些API失效或者迁移,对失效的API,返回404 not found 或 410 gone;对迁移的API,返回 301重定向。...对第三点的实现稍微多说一点: Java服务器端一般用异常表示 RESTful API的错误。API 可能抛出两类异常:业务异常和非业务异常。 ...403 forbidden 无权限 404 not found 资源不存在 500 internal server error 非业务类异常 503 service unavaliable 由容器抛出,...PUT时,要看具体的业务层代码,看看接口产生的结果是否幂等,如果幂等用PUT,相反用POST       如:接口接收到一资源,资源存在更新,不存在插入新数据,这个接口就要用PUT 参考:https:/

    2.5K00

    RocketMQ消息发送常见错误与解决方案

    消息发送者在消息发送时首先会查本地缓存,如果本地缓存中存在,直接返回路由信息。 如果缓存不存在,则向Nameserver查询路由信息,如果Nameserver存在该路由信息,就直接返回。...2、消息发送超时 ---- 消息发送超时,通常客户端的日志如下: ? 客户端报消息发送超时,通常第一怀疑的对象是RocketMQ服务器,是不是Broker性能出现了抖动,无法抗住当前的量。...通常情况下超时通常与Broker端的处理能力关系不大,还有另外一个佐证,在RocketMQ broker中还存在快速失败机制,即当Broker收到客户端的请求后会将消息先放入队列,然后顺序执行,如果一条消息队列中等待超过...在RocketMQ中通常遇到网络超时,通常与网络的抖动有关系,但由于我对网络不是特别擅长,故暂时无法找到直接证据,但能找到一些间接证据,例如在一个应用中同时连接了kafka、RocketMQ集群,发现在出现超时的同一时间发现连接到...,在向内存追加消息时加锁的时间,默认的判断标准是加锁时间超过1s,就认为是pagecache压力大,向客户端抛出相关的错误日志。

    6.6K21

    restful api接口规范和服务调用的区别_rest接口规范

    这导致API构架的流行,甚至出现”APIFirst”的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论。...以 DELETE 为例,第一次DELETE返回200表示删除成功,第二次返回404提示资源不存在,这是允许的。 复杂查询 查询可以捎带以下参数: . 示例 备注 过滤条件 ?...403 forbidden 无权限 404 not found 资源不存在 500 internal server error 非业务类异常 503 service unavaliable 由容器抛出,...如: 按关键字搜索; 1.计算地球上两点间的距离; 2.批量向用户推送消息 3.可以把这些服务看成资源,计算的结果是资源的presentation,按服务属性选择合适的HTTP方法。...URI失效 随着系统发展,总有一些API失效或者迁移,对失效的API,返回404 not found 或 410 gone;对迁移的API,返回 301 重定向。

    2.3K10

    【Java学习】API接口数据规范

    1、HTTP状态码 当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。...403-服务器拒绝访问。验证身份通过了,但是资源没有权限进行操作。 404-请求资源(网页等)不存在。 500-内部服务器错误。 504-网关超时。...服务器作为网关或代理,但是没有及时从上游服务器收到请求。 2、HTTP状态码分类 HTTP状态码可以分为5类:消息响应、成功响应、重定向、客户端错误、服务器错误。 状态 描述 100 继续。...403 验证身份通过了,但是资源没有权限进行操作。 404 服务器无法根据客户端的请求找到资源(网页)。 405 客户端请求中的方法被禁止。 500 服务器内部错误,无法完成请求。...502 作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应 503 由于超载或系统维护,服务器暂时的无法处理客户端的请求。

    1.5K20

    异常的处理和HTTP状态码的分类

    异常重试:当发生异常时,可以选择进行重试操作,重新发送请求或执行相应的操作。可以设置重试次数和重试间隔,以克服临时的网络问题或服务器错误。异常记录:将异常信息记录到日志文件中,以便后续的排查和分析。...可以使用日志库(如logging)来记录异常信息,包括异常类型、异常消息、发生时间等。异常抛出:在某些情况下,可以选择将异常抛出,交由上层调用者来处理。...2xx(Success):表示请求已成功处理并返回结果。200 OK:请求成功。201 Created:请求成功并创建了新的资源。204 No Content:请求成功,但没有返回内容。...403 Forbidden:禁止访问。404 Not Found:资源不存在。5xx(Server Error):表示服务器错误,无法完成请求。...500 Internal Server Error:服务器内部错误。502 Bad Gateway:错误的网关。503 Service Unavailable:服务不可用。

    75930

    聊一聊HTTP协议常见的状态码及含义

    4xx是客户端错误,比如404 Not Found,403 Forbidden。5xx是服务器错误,如500 Internal Server Error。...401 Unauthorized‌:需要认证信息,但未提供或认证失败。‌403 Forbidden‌:服务器理解请求但拒绝执行,通常是因为权限问题。‌...五、 服务器错误5XX5xx状态码表示服务器在处理请求时遇到了错误。常见的5xx状态码包括:‌500 Internal Server Error‌:服务器内部错误,无法完成请求。‌...错误排查:404需检查URL,500需检查服务器日志。401 vs 403:401 表示未认证(需登录),403 表示无权限(已登录但权限不足)。...500 vs 503:500 是代码错误,503 是服务器暂时不可用(如维护或过载)。状态码是HTTP通信的核心,帮助客户端快速理解请求结果。

    1.5K10

    聊一聊接口测试如何设计有效的错误响应测试用例

    错误响应测试用例的设计是为了确保当接口接收到无效或意外的输入时,能够返回预期的错误信息,而不是崩溃或返回不明确的结果。输入验证错误、认证失败、资源不存在、业务逻辑错误、服务器错误等。...这些都属于输入验证的错误,应该返回4xx的状态码,并附带具体的错误信息。还有资源相关的错误,比如访问不存在的资源,或者尝试操作其他用户的资源,这时候需要404或403。...同时,处理并发操作时的冲突,比如使用版本号或时间戳来检测资源是否已被修改,返回409 Conflict。...服务端错误测试点:依赖服务不可用:模拟数据库连接失败或第三方 API 超时,返回 503 Service Unavailable 或 500 Internal Server Error。...幂等性处理对于重试场景(如支付接口),设计重复请求的测试用例,验证是否返回 409 Conflict 或幂等性处理结果。d.

    1K10

    如何使用SpringMvc处理Rest异常

    rest错误情况的表述 既然状态码很可能不够用,那么当最终用户遭遇错误情况时,我们可以提供什么其他东西来协助他们呢?显然可以提供可读的错误信息,方便开发者查看。...遇到这种情况,应将组件特有异常转译成自定义的异常抛出。 调用http客户端组件发起请求,得到响应对象,通常先检查是否为null。...若为null,原因一般是此http客户端组件设计得不好,没有很好地定义自己的行为结果,令使用者无法得知当前状态。...对于那些有可能是中间结点返回的错误响应(常见的包括401、403、404、405、406、408、409、429、500、502、503、504)要特别注意,它们的响应体未必符合http接口文档里声明的格式...尝试解析时也需要捕获住所使用解析组件的所有异常(比如用jackson解析json响应体,需要捕获所有可能会被抛出来的jackson的异常)。

    1.7K00

    接口设计,接口返回信息,当账号不存在时候,应该返回200还是500,是直接返回R.fail()还是throw exception

    在Java接口设计中,当账号不存在时,返回200还是500,以及是直接返回​​R.fail()​​还是抛出异常,需要根据具体的业务场景和设计规范来决定。...这种方式更符合RESTful API的设计原则,能够更清晰地表达资源不存在的情况。500状态码:通常表示服务器内部错误。...当账号不存在是由于服务器内部的逻辑错误导致的,例如查询数据库时出现了问题,那么可以返回500状态码。但如果账号不存在是正常的业务逻辑情况,那么返回500状态码是不合适的。...抛出异常:抛出异常通常用于处理不可预见的错误情况,或者当业务逻辑中出现严重问题时。如果账号不存在是正常的业务逻辑情况,那么抛出异常可能不是最佳选择。...如果账号不存在是由于客户端请求了一个不存在的资源,可以考虑返回404状态码。如果账号不存在是由于服务器内部的逻辑错误导致的,可以返回500状态码,并抛出异常。

    30900

    「 Flutter 项目实战 」设计企业级项目入口 main.dart 设计与实现 ( GSYGithubApp 源码解读·二 )

    日志打印与上报 print(obj); print(stack); }); } 2.2 错误页展示 - ErrorWidget Flutter 在很多关键的方法进行了异常捕获 举个例子,当布局发生越界或不和规范时...此时,我们如果还是一层层传递数据,当需要修改数据时,就会比较麻烦。...event 对象 在传递网络请求结果的事件时,我们将其内容封装在一个对象中传递 通常情况下我们只需要在请求错误时,向用户反馈结果 所以这里我们只需封装一个 HttpErrorEvent 对象(当然如果需要...: showToast(GSYLocalizations.i18n(_context).network_error_403); break; case 404..., gravity: ToastGravity.CENTER, toastLength: Toast.LENGTH_LONG); } } 2.5.4 发送事件 发送消息时只要调用

    1.3K31

    「 Flutter 项目实战 」设计企业级项目入口 main.dart 设计与实现 ( GSYGithubApp 源码解读·二 )

    日志打印与上报 print(obj); print(stack); }); } 2.2 错误页展示 - ErrorWidget Flutter 在很多关键的方法进行了异常捕获 举个例子,当布局发生越界或不和规范时...此时,我们如果还是一层层传递数据,当需要修改数据时,就会比较麻烦。...event 对象 在传递网络请求结果的事件时,我们将其内容封装在一个对象中传递 通常情况下我们只需要在请求错误时,向用户反馈结果 所以这里我们只需封装一个 HttpErrorEvent 对象(当然如果需要...: showToast(GSYLocalizations.i18n(_context).network_error_403); break; case 404..., gravity: ToastGravity.CENTER, toastLength: Toast.LENGTH_LONG); } } 2.5.4 发送事件 发送消息时只要调用

    1.4K21

    struts的声明式异常处理demo

    情景 使用Struts封装的下载文件的功能 当下载文件找不到的时候,struts获取的InputStream为null 这个时候,就会报500错误 java.lang.IllegalArgumentException... 当抛出异常,Struts就会检查struts.xml里面有没有配置exception-mapping,检查exception-mapping的class跟异常是否一样,如果一样就会找到...result那样 在这里,就是返回了notFound的result,然后找到global-results里有一个叫做notFound的result,然后执行重定向notFound,notFound是一个...action 注意,如果result返回了一个action,那么就要指定type="redirect"(默认的是dispatcher) 因为处理声明式异常的filter在接受action的后面,如果...type是转发请求的话,不会经过ActionFilter的处理,结果会报404 error-page 在web.xml中,可以针对某个error代码(404、403、500。。。)

    636100

    Webman实战教程:Exception异常插件如何解决开发中的异常问题

    PHP中的异常 是程序在运行中出现不符合预期的情况及与正常流程不同的状况。一种不正常的情况,按照正常逻辑本不该出的错误,但仍然会出现的错误,这是属于逻辑和业务流程的错误,而不是编译或者语法上的错误。...=utf-8 { "code": 0, "msg": "账号或密码不能为空", "data": {}, } 所有返回的异常信息将以json格式返回,以上为返回简略的异常信息...当debug值为false,只有错误信息会被显示以防止应用的敏感信息泄漏,将返回简略的异常信息。...):ForbiddenHttpException 资源不存在异常类(HTTP Status 404):NotFoundHttpException 路由地址不存在异常类(HTTP Status 404):...必须保持顺序是: ① 状态码 ② 错误消息 ③ 响应数据 使用场景 每个项目有标准的统一输出,自定义返回内容 前后端分离:前端要求返回的 HTTP状态码并不是 429,而是 200 或者其他 响应的body

    1.3K21

    【RESTful】RESTful API 接口设计规范 | 示例

    其通过HTTP协议发送请求和接收结果时采用XML格式封装,并增加了一些特定的HTTP消息头,这些特定的HTTP消息头和XML内容格式就是SOAP协议。...状态码:当客户端发送一个请求时,服务端应当响应什么状态码 错误处理:如当发现客户端传入的参数有问题时,该返回什么样的状态信息。...筛选时,API应该提供一个参数,过滤一下返回的结果。 例如: ?offset = 10 :指定返回记录的开始位置 ?page = 2&per_page = 100 :指定第几页,以及每页的记录数 ?...例如创建用户资源时需要用户名、密码,而前端只提供用户名字段,那么就要返回一个422 状态码,并返回错误信息:”密码不能为空“ 500 INTERNAL SERVER ERROR 服务器内部错误,此时服务端无法处理任何请求...422,403… 错误处理:输出JSON格式错误信息 返回结果:输出JSON数组或JSON对象 数据库设计 在数据库中新建2张表: 用户表: ID、用户名、密码、注册时间 文章表: 文章ID、标题、内容

    3.4K20
    领券