未加星标

对『api运行』任务执行Readme的进一步理解

字体大小 | |
[开发(php) 所属分类 开发(php) | 发布者 店小二04 | 时间 2016 | 作者 红领巾 ] 0人收藏点击收藏
前言

『运行api』是趣编程学员第一次进行参与服务器开发领取的任务,大多数像我一样的零基础学员在按照Readme步骤一步步执行完了之后,可能都会有这样的疑惑:我到底干了些啥?

没错,当我看到“Api 项目运行成功”终于在浏览器的刷新中出现时,我是挺激动的,毕竟花了那么长时间,但回过头来,想总结的时候却发现,除了“api项目运行成功”这几个字就没什么好写的了,除了对着文档把命令输到命令行看着它跑到头,就没什么剩下的了。

所以在这里我把Readme中大部分的步骤进行了进一步的解释,希望大家看完之后,至少能知道每个步骤是干什么,当然有兴趣更详细了解的,文中也放了些传送门,希望能帮到大家。

部分命令的进一步理解 composer install

首先要了解一下Composer:

Composer 是php 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。

想要了解此步骤之前需要先了解在此之前已经完成了的两个步骤:

安装composer 创建composer.json并在其中声明依赖关系

参考: http://docs.phpcomposer.com/00-intro.html#Introduction

打开我们下载的api项目根目录的composer.json可以看到,这里已经声明了依赖关系。

"require": { "php": ">=5.5.9", "laravel/lumen-framework": "5.2.*", "vlucas/phpdotenv": "~2.2", "basicit/lumen-vendor-publish": "^1.0", "coolcode/shared": "dev-master", "tymon/jwt-auth": "dev-develop", "illuminate/routing": "^5.2", "league/fractal": "^0.13.0", "dingo/api": "[email protected]", "guzzlehttp/guzzle": "~6.0", "lukasoppermann/http-status": "^2.0", "mnabialek/laravel-sql-logger": "^1.0", "liqiangz/alidayu": "^1.1", "palanik/lumen-cors": "dev-master" {

所以这个步骤就是使用Composer的install命令将composer.json声明的依赖库安装到创建的项目目录vender中。

composer dump-autoload

自动加载(库文件):

总体来说 composer 提供了几种自动加载类型:

classmap psr-0 psr-4 files

理论上来说,项目代码用psr-4自动加载,详细了解请参考: https://laravel-china.org/topics/1002

这里只介绍自动加载的操作:

例:在 composer.json 的 autoload 字段中增加自己的 autoloader。

{ "autoload": { "psr-4": {"Acme\\": "src/"} } }

Composer 将注册一个 PSR-4 autoloader 到 Acme 命名空间。

你可以定义一个从命名空间到目录的映射。此时 src 会在你项目的根目录,与 vendor 文件夹同级。例如 src/Foo.php 文件应该包含 Acme\Foo 类。

打开composer.json,可以看到这里已经定义了命名空间App到目录app的映射。

"autoload": { "psr-4": { "App\\": "app/" }, "files": [ "app/helpers.php" ] }

从而使用autoload命令加载app/helpers.php。

php artisan jwt:secret

php artisan: laravel框架的命令行模式。

JWT(Json Web Token)主要用来实现基于API的用户认证,详细了解参考: http://laravelacademy.org/post/3640.html?utm source=tuicool&utm medium=referral

该步骤为集成JWT到Laravel的配置步骤最后生成密钥的部分。

php artisan key:generate

此步骤是Laravel框架的基本设置,在开发或者启用网站之前,应该首先修改application key。Laravel会用它来加密或者生成哈希。也可以手动设置一个32位的随机字符串,这里使用Laravel提供的Artisan命令行工具来生成一个符合标准的字符串。

php artisan vendor:publish

此步骤为创建指定环境下的配置文件,替换某些配置项。

php artisan migrate

首先要了解一下migrate:把迁移(migration)想象成管理数据库的版本管理系统(VCS Version Control System)。假如你在一个团队中一同做开发,团队中的每个人都会在自己的开发环境中保存一份数据库。假如张三对数据库做了修改 增加了一个字段,并将修改提交到了版本管理系统,这时你从版本管理系统将代码更新到了本地开发环境中,由于你本地机器上的数据库中没有张三所创建的那个字段,程序可能就会报错。有解决办法吗?有,就是“迁移(migration)”。

此步骤为执行application目录和bundles中扩展包目录下的所有迁移。

php artisan migrate:rollback:回滚最后一个迁移操作。

php artisan db:seed

此步骤为填充数据库。

配置 nginx 的 conf

此步骤对nginx的配置文件修改了两处:

在41行(## Root and index files.)下的root(服务器的默认网站根目录)修改为 ~/api/public; 在69行出增加了

(默认请求):

location / { try_files $uri $uri/ /index.php?$query_string; } 结语

如果发现本文有问题,或者有疑惑,可以在本文下留言,我会尽快更正。

本文开发(php)相关术语:php代码审计工具 php开发工程师 移动开发者大会 移动互联网开发 web开发工程师 软件开发流程 软件开发工程师

分页:12
转载请注明
本文标题:对『api运行』任务执行Readme的进一步理解
本站链接:http://www.codesec.net/view/484872.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 开发(php) | 评论(0) | 阅读(27)