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

使用 Swift 创建简单二维码扫描应用

Discogs 先从 Discogs 开始。首先,我们需要登录或者注册一个 Discogs 账户。登录之后,拉到网站最底端,在 footer 最左边边栏,点击 API。 ?...现在我们需要将查询 URL 保存到我们 CDBarcodes 中。在 Constants.swift 文件中,将https://api.discogs.com/database/search?...有了 CocoaPods 就可以安装第三方库,我们会使用 Alamofire 来请求网络,使用 SwiftyJSON 来处理从 Discogs 返回 JSON 数据。...这个自动转化特性好处是,我们在设置 metadataObjectTypes 时,只要设置AVMetadataObjectTypeEAN13Code,EAN-13 和 UPC-A 条码都将会被识别。...然后将 label 中内容设置我们想要 Album 内容。 ? 测试 CDBarcodes 我们 app 完成啦!

1.9K20
您找到你想要的搜索结果了吗?
是的
没有找到

我们必须要知道RESTful服务最佳实践

4.一致数据格式 服务端返回数据格式要么是XML、要么是Json(获取数据),或者直接返回状态码,有兴趣可以看看博客园开放平台操作数据api,post、put、patch都是返回一个状态码...example.com/api/user/delete/1 GET/POST 删除标识1用户信息 https://example.com/api/updateUser/1 POST 更新标识1用户信息...统一返回数据格式 对于合法请求应该统一返回数据格式,这里演示是json code——包含一个整数类型HTTP响应状态码。...HTTP状态响应码在500-599之间”fail”,在400-499之间”error”,其它均为”success”(例如:响应状态1XX、2XX和3XX)。...当状态”fail”或”error”时,data仅包含错误原因或异常名称、或者null也是可以 返回成功响应json格式 { "code": 200, "message": "success

1.2K30

如何高效管理和监控 Elasticsearch 别名及索引?

使用特定别名过滤: GET /_alias/listings 这将返回所有与别名 listings 相关联索引。...filter_path=**.listings 是一个用于过滤 Elasticsearch 响应查询语句。 具体含义如下: GET /_aliases: 这个端点用于获取集群中所有索引别名信息。...filter_path 参数: 这个参数用于过滤 Elasticsearch 响应数据路径,只返回匹配指定路径数据。它允许我们精确控制返回 JSON 结构,减少不必要数据传输和解析。...结合在一起,filter_path=**.listings 含义是: 过滤响应,只返回包含 listings 别名索引信息。...由于 ** 可以匹配所有层级,所以会在返回 JSON 结构中递归地查找并返回所有路径中包含 listings 部分。 如果我们要获取别名为:listing-changes 索引-别名列表信息。

11410

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

设计概念和准则 网络上所有事物都可以被抽象资源 每一个资源都有唯一资源标识,对资源操作不会改变这些标识 所有的操作都是无状态(本次操作、下次操作、上次操作之间无关系) 资源:网络上一个实体、...OPTIONS : 请求查询服务器性能,或者查询与资源相关选项和需求 对资源操作:创建、编辑、请求、删除 响应 格式:状态行、消息报头、响应正文 状态行格式:HTTP-Version Status-Code...状态码:当客户端发送一个请求时,服务端应当响应什么状态码 错误处理:如当发现客户端传入参数有问题时,该返回什么样状态信息。...例如创建用户资源时需要用户名、密码,而前端只提供用户名字段,那么就要返回一个422 状态码,并返回错误信息:”密码不能为空“ 500 INTERNAL SERVER ERROR 服务器内部错误,此时服务端无法处理任何请求...DELETE/collections/identity : 返回一个204状态码和空响应体 DHC Client 用于测试API 安装DHC 谷歌浏览器插件: 名为: 基于RESTWeb服务客户端

1.2K20

REST API有关幂等性等11条最佳实践

规则 #4:不要将数组作为顶级响应返回 来自端点顶级响应应该始终是一个对象,而不是一个数组。...如果您端点返回顶级数组,您将需要一个全新端点。 规则 #5:不要返回映射结构 我经常看到 JSON 响应中用于集合映射结构。相反,返回一个对象数组。...他们将幂等键存储 24 小时,您提供 24 小时保护,防止重复: POST /v1/customersIdemptency-Key: blahblahblahblah{"name":"Bob Dobbs...就像第一个 POST 返回且没有错误一样。 2、返回之前响应 不要向客户端返回错误,而是向他们返回客户端应该第一次得到的确切响应。 这使得客户端变得更加愚蠢,因为他们不必显式地编写冲突错误处理程序。...但是,它使服务器实现变得非常复杂:您需要将所有响应存储一段时间,并且需要验证客户端是否每个请求发送了完全相同参数。 Stripe选择了这条路线。

18020

PHP 后端表单验证和请求处理

ValidationException 异常,关于异常响应处理,我们稍后会介绍。...消息保存成功后,我们通过 Response 对象发送响应给客户端。 异常响应处理 在测试表单请求处理逻辑之前,我们来介绍下对异常响应处理。...,可以看到,如果捕获到异常是 ValidationException 实例,则将响应状态码设置 422,然后通过 Response 响应实例发送验证错误信息给客户端,对于其他异常,目前先统一返回 500...表单请求所有后端处理逻辑,在浏览器打开联系表单页面,如果输入了错误手机号,会返回对应验证错误消息: ?...当然,这里还有可以优化地方,比如,在请求数据验证失败后,返回提交请求数据填充对应输入框,以免用户重新输入。 访问数据库,在 messages 表中应该可以看到最新插入记录: ?

2.6K30

用ASP.NET Core 2.0 建立规范 REST API -- DELETE, UPDATE, PATCH 和 Log

幂等性核心概念可以理解:"你可以发送多于一次同样请求,但是不会对服务器造成额外改变"。也就是说每次发送了DELETE请求之后,服务器状态都是一样。...报告验证错误信息: 返回状态吗应该是 422 Unprocessable Entity (上文讲过,422表示请求格式没问题,但是语义有错误,例如实体验证错误) 除了状态码之外,还需要把验证错误信息在响应...这里返回状态422 是正确选择,但是 422 要求请求body语法必须是正确,不能是null,所以前面检查是否null代码还需要保留。...由于ASP.NET Core并没有内置帮助方法可以返回422和验证错误信息,所以我们先建立一个类用于返回 422 和验证错误信息,它继承于ObjectResult: ?...看我们之前写捕获异常代码,在StartupConfigure方法里: ? 现在代码是API消费者返回了500状态码,并返回了一些错误信息。

1.8K20

架构必备「RESTful API」设计技巧经验总结

对于POST,PUT或PATCH成功响应消息,应该返回更新后对象,而不是只返回一个null。点击这里有一篇http1.0和2.0对比。...因此,我喜欢返回“OK”,尽管这是一个字符串,但是在返回时候会被包装成一个简单响应对象。 ? 使用HTTP状态码和错误响应 因为我们使用了HTTP方法,所以我们应当使用HTTP状态码。...我喜欢使用这些状态码: 对于数据错误 400:请求信息不完整或无法解析。 422:请求信息完整,但无效。 404:资源不存在。 409:资源冲突。...如果password字段太短,则返回422。 如果email字段不是有效电子邮件,则返回422。 如果email已经被使用,返回一个409。...从上面这些情况来看,有两个错误会返回422,不过他们原因是不同。这就是为什么我们需要一个错误码,甚至是一个错误描述。

2K30

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

json格式返回,以上返回简略异常信息 所有的异常错误处理器根据配置文件 config/app.php中debug值来调整错误显示, 当debug值true (表示在调试模式), 错误处理器会显示异常以及详细函数调用栈和源代码行数来帮助调试...当debug值false,只有错误信息会被显示以防止应用敏感信息泄漏,将返回简略异常信息。...必须保持顺序是: ① 状态码 ② 错误消息 ③ 响应数据 使用场景 每个项目有标准统一输出,自定义返回内容 前后端分离:前端要求返回 HTTP状态码并不是 429,而是 200 或者其他 响应body...编辑 config/plugin/tinywan/exception-handler/app.php 文件 status HTTP 状态码 自定义body返回内容 编辑 config/plugin/...": null } 自定义选项参考一 1、假设status HTTP 状态码设置 200 2、假设body数组设为 'body' => [ 'error_code' => 200, 'message

41921

基于 MVC RESTful风格实现

主要特点是方法信息存在于 HTTP协议方法中( GET, POST, PUT, DELETE),作用域存在于 URL中。...@GETMapping GET请求 @PUTMapping PUT请求 @POSTMapping POST请求 @DELETEMapping DELETE请求 @ResponseBody 将响应内容转换为...,而不进行视图跳转 2.2返回 HTTP状态码 REST风格 API一个最鲜明特点通过返回对应 HTTPStatus来判断客户端操作是否完成 下面是spring中关于 Http状态码描述枚举类,...本文列举了常见状态码(读者若对此感兴趣可以查看 HttpStatus源码) public enum HttpStatus{ OK(200, "OK"),//用于服务器有实体响应 CREATED..., "Internal Server Error"),//服务器内部错误 NOT_IMPLEMENTED(501, "Not Implemented"),//服务器不支持当前请求} Spring返回状态码是通过

71310

使用ASP.NET Core 3.x 构建 RESTful API - 5.1 输入验证

验证是输入数据,而不是输出数据。例如POST请求Body里面的参数就需要进行验证,而GET请求返回响应里面的内容就不需要验证了。...而且如果传进来属性类型不正确的话,该方法也会返回false。 报告验证错误信息 由于验证错误肯定是由客户端引起,所以返回状态码肯定是4xx。...针对验证错误,具体就是422 Unprocessable entity 这个状态码。...当报告验证错误信息时候,我们不仅要使用正确状态码,还需要在响应body里面包含验证错误信息。...REST并没有规定返回错误信息格式,但是有一个标准却规定了此事:Validation Problem Details RFC,它定义了这样响应body应该是什么样

63310

Python爬虫--Requests 库用法大全

关于请求测试,介绍一个网站 :http://httpbin.org/ ,这个网站能测试 HTTP 请求和响应各种信息,比如 cookie、ip、headers 和登录验证等,且支持GET、POST等多种方法...不是之前:python-requests/2.23.0。 ---- 5、POST 请求 GET请求相关知识都讲完了,下面讲讲另一个常见请求方式:POST请求。...---- 6、响应 访问URL时,有请求就会有响应,上面的示例使用 text 和 content 获取了响应内容。...除此以外,还有很多属性和方法可以用来获取其他信息,比如状态码、响应头、Cookies 等。...示例代码: import requests # 设置超时时间 10 秒 r = requests.get('https://httpbin.org/get', timeout=10) print(r.status_code

61730

HTTP状态码大全

接收到此状态默认操作为遵循与响应关联 Location 头。原始请求方法 POST 时,重定向请求将使用 GET 方法。...接收到此状态默认操作为遵循与响应关联 Location 头。原始请求方法 POST 时,重定向请求将使用 GET 方法。...接收到此状态默认操作为遵循与响应关联 Location 头。原始请求方法 POST 时,重定向请求将使用 GET 方法。...接收到此状态默认操作为遵循与响应关联 Location 头。原始请求方法 POST 时,重定向请求还将使用 POST 方法。...接收到此状态默认操作为遵循与响应关联 Location 头。原始请求方法 POST 时,重定向请求还将使用 POST 方法。

2.2K40

前端面试实录HTTP篇

常见 HTTP 状态码: • 1xx: 指示信息 • 100(继续): 表示继续,在发送 post 请求时,已发送了 HTTP header 后,服务器端将返回此信息,表示确认,之后发送具体参数信息...服务器返回响应时,不会返回网页内容。 • 305(使用代理): 请求者只能使用代理访问请求网页。如果服务器返回响应,还表示请求者应使用代理。...• 416(请求范围不符合要求):如果页面无法提供请求范围,则服务器会返回状态代码。 • 417(未满足期望值):服务器未满足"期望"请求标头字段要求。...• 449(重试请求):应进行重试 • 424(错误导致):因之前某个接口失败,导致当前请求失败 • 422(语义错误):请求格式正确,但是由于含有语义错误,无法响应。...PUT 请求是幂等,即多次调用同一个 PUT 请求对资源状态不会有影响,而 POST 请求不是幂等,即多次调用同一个 POST 请求可能会生成多个资源,或者对已存在资源进行多次更新。 3.

8710

小结HTTP状态

201 Created:请求已经成功,并因此创建了一个新资源。这通常是在PUT或POST请求之后发送响应。 202 Accepted:请求已经接收到,但是没有响应,没有结果。...意味着不会有一个异步响应去表明当前请求结果,预期另外进程和服务去处理请求,或者批处理。 204 No Content:服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了元信息。...205 Reset Content:服务器已经成功处理了请求,但是没有返回任何内容。与204响应不同,返回状态响应要求请求者重置文档视图。...303 See Other:对当前请求响应可以在另一个URI上被找到,而且客户端应该采用GET方式访问那个链接。这个方法存在主要是为了允许由脚本激活POST请求输出重定向到一个新资源。...备注:这里要注意422,别请求链接一出错,就屁颠屁颠找后端,先看下后端给过来API文档中,要传字段是否都准确跟上了。?

1.1K20
领券