草庐IT

django-rest-interface

全部标签

php - 创建 REST API 客户端和服务器

我有兴趣创建一个将提供API服务的应用程序。与Facebook类似,终端开发人员将能够注册应用程序并接收个性化数据,以便通过第三方应用程序访问提供的API。目前,我想提供一个PHP和JavaScriptSDK,允许开发人员通过安全方法(私钥-公钥)访问API。我想我或多或少地掌握了如何处理这个问题的总体理解:处理请求的内置REST服务器,一个内置的API服务器,充当请求和REST服务器之间的屏障(验证key、权限等)一个内置的JavaScript库,相当于Facebook的“all.js”,异步到页面,可以动态执行API调用,并向API服务器进行验证。此外,我希望在内部使用API,即通

php - 捕获接口(interface)异常。

我对PHP中的异常处理有疑问。我有很多异常(exception),意思是一样的:找不到东西。所有这些异常都实现了接口(interface)(不是类)NotFoundException。所以我的问题是:可以检查异常是否在catchblock中实现了接口(interface)。我知道我可以将NotFoundException接口(interface)更改为一个类,但一些异常已经扩展到另一个异常。(示例:CategoryNotFoundException扩展CategoryException并实现NotFoundException)。为什么我需要这个接口(interface)?当一个页面正在

php - 我应该为 rest api 包装器编写测试吗?

我对整个测试场景非常陌生。我一直在阅读有关BDD测试的文章(在我的案例中,我正在编写PHP应用程序,所以我正在研究将Behat作为BDD框架),我发现它非常有趣。我在网上搜索了一些关于api包装器的bdd测试的信息,但我发现了很多不同的结果。我将使用RESTapi为服务编写一个应用程序。但我还需要编写PHPapi包装器。所以我的问题是,我应该为包装器编写测试吗?我应该编写什么样的测试? 最佳答案 BDD框架可以工作,但考虑到selenium、您的应用程序使用api以及您的api内部发生的事情之间可能发生的事情的可能性,它可能会被证明

php - 通过 PUT 方法上传 Symfony REST 文件

我有一个REST服务,我想通过PUT更新文件。当我使用POST时,我使用以下方法获取上传的文件:/***@varRequest$request*/$request->files->get('file');如何在Symfony框架中将上传的文件作为PUT发送? 最佳答案 当您收到POST请求时,您会收到一个提交的表单,其中包含一个或多个字段,这些字段包括任何文件(可能不止一个文件)。Content-Type是multipart/form-data。当您PUT文件时,文件的数据是请求主体。这就像使用GET下载文件相反,文件的内容是响应主

PHP Rest API,重定向 POST 路由器

我正在尝试编写一个简单的RESTfulphp应用程序。我正在尝试编写一个index.php路由器。我目前拥有的.htaccess文件是RewriteEngineOnRewriteCond%{REQUEST_FILENAME}!-fRewriteCond%{REQUEST_URI}!(\.[a-zA-Z0-9]{1,5}|/)$RewriteRuleapi/^(.*)$api/index.php?_url=/$1[QSA,L]我添加了RewriteCond%{REQUEST_URI}!(\.[a-zA-Z0-9]{1,5}|/)$以强制使用尾部斜线here.调用var_dump($_PO

django authenticate--用户身份认证

authenticateDjango的contrib.auth模块中的authenticate()函数用于对用户的凭据进行身份验证,与已配置的身份验证后端进行比较。当用户尝试登录时,authenticate()函数将使用用户的凭据(即用户名和密码)作为参数进行调用,该函数然后检查可用的身份验证后端以验证凭据,这些后端在项目的settings.py文件中定义,如果凭据有效,则authenticate()函数返回已认证的用户对象;否则,它返回None。在成功身份验证后,可以使用Django的login()函数登录用户。认证后端1.AUTHENTICATION_BACKENDS是Django设置中的

16-Django框架基础(4)

1Django过滤器用法过滤器从字面的意思上,可以理解为:过滤掉不需要的,剩下我们需要的,Django的模板语言同样也内置了过滤器,如果你了解其他的框架对这个词一定不陌生,比如说Flask框架、Vue框架等,都内置了过滤器这个功能,在本节我们将一起学习Django框架的过滤器。1.1过滤器语法格式过滤器作用是在变量输出时,对输出的变量值做进一步的处理。比如,我们可以使用过滤器来更改变量的输出显示。过滤器跟模板标签一样,也是在模板中对函数进行调用比如,对输出的日期进行格式化处理,或者转换大小写字母等,这些都有对应的过滤器去处理它们。当内置过滤器满足不了需求的情况下,也可自定义过滤器。过滤器的语法

php - 具有返回类型和 SOLID 的接口(interface)

自PHP7发布以来,我一直在重温SOLID原则。特别是Liskovsubstitutionprinciple的想法简而言之,它指出类的任何扩展都应该能够在可以使用其父类的任何地方使用。此原则的一部分是针对接口(interface)进行编码,因此您的方法定义了要遵守的契约。但是,在PHP5及以下版本中,返回类型不存在。因此,尽管您必须将相同的参数类型传递给使用接口(interface)的方法,但您可以返回任何您喜欢的旧类型。对于大型项目,这使得遵守这一原则比使用其他语言要困难得多。我还没有安装PHP7来测试它,我也没有在PHP手册或任何博客网站上看到任何宣传新功能的文档。PHP7中的接口

php - Wordpress Rest API 不适用于 Postman

我正在使用WordPressRESTAPI插件。当我访问GoogleChrome中的API链接时,它会返回一个JSON响应,但如果我尝试将它与Postman一起使用,它就不起作用。相反,它返回此响应:functiontoNumbers(d){vare=[];d.replace(/(..)/g,function(d){e.push(parseInt(d,16))});returne}functiontoHex(){for(vard=[],d=1==arguments.length&&arguments[0].constructor==Array?arguments[0]:argument

php - 如何在php中实现鸡鸡蛋鸟类接口(interface)问题

我得到了下面的代码挑战。它是关于接口、类继承等的,不知道怎么做。这是我得到的//interfacebirdinterfaceBird{//layeggpublicfunctionlayEgg();}//chickencanlayeggclassChickenimplementsBird{publicfunctionlayEgg(){returnnewEgg();}}//classeggclassEgg{public$count=0;//egg,birdtypepublicfunction__construct($birdType){}//hatch,bornchickpublicfun