This commit is contained in:
喻希里 2017-09-07 14:14:13 +08:00
commit ed60b7f878
33 changed files with 189 additions and 8714 deletions

2
.gitignore vendored
View File

@ -36,7 +36,7 @@ Thumbs.db
node_modules/
plugins/
runtime/
./prd/
prd/
dev/
.tags
.tags1

View File

@ -500,7 +500,7 @@ class InterfaceEditForm extends Component {
<RadioGroup>
<Radio value="form">form</Radio>
<Radio value="json">json</Radio>
<Radio value="file">file</Radio>
{/* <Radio value="file">file</Radio> */}
<Radio value="raw">raw</Radio>
</RadioGroup>
)}
@ -533,7 +533,7 @@ class InterfaceEditForm extends Component {
</Col>
</Row>
{this.props.form.getFieldValue('req_body_type') === 'file' ?
{/* {this.props.form.getFieldValue('req_body_type') === 'file' ?
<Row className="interface-edit-item" >
<Col span={18} offset={4}>
{getFieldDecorator('req_body_other', { initialValue: this.state.req_body_other })(
@ -545,7 +545,7 @@ class InterfaceEditForm extends Component {
</Row>
:
null
}
} */}
{this.props.form.getFieldValue('req_body_type') === 'raw' ?
<Row>
<Col span={18} offset={4} >

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

View File

@ -2,12 +2,23 @@
## 接口配置
#### 4.3 接口编辑
添加完接口点击新添加的接口,跳转到接口预览页面,可看到刚才填写的信息。接口的详细信息点击编辑功能进行添加
[新建接口](./usage-创建第一个API.html#新建_编辑接口) 后,点击新添加的接口,右侧可以看到接口的预览信息,点击右侧的 `编辑` Tab项进入编辑面板。
#### 4.4 测试接口
点击运行tab,可进入到接口测试页面,首先安装chrome crossRequest扩展才可正常使用此功能
<img src="./images/interface_run.png" width="800" style="margin:0px auto;display:block;" alt="图片名称" align=center />
点击保存按钮可把当前测试保存到测试集,方便下次调试
在改面板中你可以看到接口的基本信息(接口名称、分类、路径),除此以外,你还可以完善以下接口信息:
- 状态: 用于标识接口是否开发完成。
- 接口描述: 用简短的文字描述接口的作用。
- query: 接口url的查询字符串。
- 请求 Headers: http 请求头字段。
- 请求 Body: http 请求 body 部分。
- 请求 Body: http 请求 body 部分。
- 响应 Body: 模拟返回结果。
> 响应 Body 分为 `json` & `raw` 两种形式
- 是否开启邮件通知:开启后将此次接口的改动以邮件的形式发送至项目组所有成员。
## 接口调试
<!-- 点击运行tab,可进入到接口测试页面,首先安装chrome crossRequest扩展才可正常使用此功能
<img src="./images/interface_run.png" width="800" style="margin:0px auto;display:block;" alt="图片名称" align=center />
点击保存按钮可把当前测试保存到测试集,方便下次调试 -->

View File

@ -1,3 +1,39 @@
## 新建项目
点击右上角的 `+` 新建项目,进入新建项目页面。
<img src="./images/usage/project_add.png" />
在新建项目页,填写项目信息:
> - 项目名称不允许重复,包括其他分组
> - 基本路径为接口统一添加了前缀
> - 新建项目页只列出了部分配置,其他详细配置(环境配置、项目图标等)需要进入项目页的“设置”面板进行配置。
<img src="./images/usage/project_add_panel.png" />
## 修改项目
在项目页点击上方的 `设置` Tab 进入项目设置面板,这个面板涵盖了项目的所有配置。
<img src="./images/usage/project_setting.png" />
这里比新建项目页面新增的功能如下:
### 修改项目图标
点击项目图标,可以修改图标及背景色:
<img src="./images/usage/project_setting_logo.png" />
### 配置环境
`环境配置` 一项可以添加该项目下接口的实际环境,供 [接口测试](./usage-使用测试集.html) 使用。
<img src="./images/usage/project_setting_env.png" />
## 删除项目
点击下方的删除按钮,输入项目名称进行删除。
> 删除项目是高风险操作,因此 YApi 对这个操作进行了特别的约束。

298
npm-shrinkwrap.json generated
View File

@ -230,8 +230,8 @@
},
"aproba": {
"version": "1.1.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/aproba/-/aproba-1.1.2.tgz",
"integrity": "sha1-RcZikJTeTpb2k+9+q3SuB5wkD8E="
"resolved": "https://registry.npmjs.org/aproba/-/aproba-1.1.2.tgz",
"integrity": "sha512-ZpYajIfO0j2cOFTO955KUMIKNmj6zhX8kVztMAxFsDaMwz+9Z9SV0uou2pC9HJqcfpffOsjnbrDMvkNy+9RXPw=="
},
"archy": {
"version": "1.0.0",
@ -240,7 +240,7 @@
},
"are-we-there-yet": {
"version": "1.1.4",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
"integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
"requires": {
"delegates": "1.0.0",
@ -428,7 +428,7 @@
},
"async-foreach": {
"version": "0.1.3",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/async-foreach/-/async-foreach-0.1.3.tgz",
"resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
"integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI="
},
"async-validator": {
@ -1664,7 +1664,7 @@
},
"block-stream": {
"version": "0.0.9",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/block-stream/-/block-stream-0.0.9.tgz",
"resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
"integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
"requires": {
"inherits": "2.0.3"
@ -2168,7 +2168,7 @@
},
"cli-source-preview": {
"version": "1.1.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/cli-source-preview/-/cli-source-preview-1.1.0.tgz",
"resolved": "https://registry.npmjs.org/cli-source-preview/-/cli-source-preview-1.1.0.tgz",
"integrity": "sha1-BTA6sSeakJPq0aODez7iMfMAZUQ=",
"requires": {
"chalk": "1.1.3"
@ -2176,7 +2176,7 @@
"dependencies": {
"chalk": {
"version": "1.1.3",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/chalk/-/chalk-1.1.3.tgz",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"requires": {
"ansi-styles": "2.2.1",
@ -2223,27 +2223,6 @@
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/clone/-/clone-1.0.2.tgz",
"integrity": "sha1-Jgt6meux7f4kdTgXX3gyQ8sZ0Uk="
},
"clone-deep": {
"version": "0.3.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/clone-deep/-/clone-deep-0.3.0.tgz",
"integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=",
"requires": {
"for-own": "1.0.0",
"is-plain-object": "2.0.4",
"kind-of": "3.2.2",
"shallow-clone": "0.1.2"
},
"dependencies": {
"for-own": {
"version": "1.0.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/for-own/-/for-own-1.0.0.tgz",
"integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
"requires": {
"for-in": "1.0.2"
}
}
}
},
"clone-stats": {
"version": "0.0.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/clone-stats/-/clone-stats-0.0.1.tgz",
@ -2513,7 +2492,7 @@
},
"console-control-strings": {
"version": "1.1.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/console-control-strings/-/console-control-strings-1.1.0.tgz",
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4="
},
"consolidate": {
@ -2728,7 +2707,7 @@
},
"cross-spawn": {
"version": "3.0.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/cross-spawn/-/cross-spawn-3.0.1.tgz",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
"integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
"requires": {
"lru-cache": "4.1.1",
@ -2737,8 +2716,8 @@
"dependencies": {
"lru-cache": {
"version": "4.1.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lru-cache/-/lru-cache-4.1.1.tgz",
"integrity": "sha1-Yi4y6CSItJJ5EUpPns9F581rulU=",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz",
"integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==",
"requires": {
"pseudomap": "1.0.2",
"yallist": "2.1.2"
@ -4160,12 +4139,13 @@
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc="
},
"fast-sass-loader": {
"fast-sass-loader-china": {
"version": "1.2.5",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/fast-sass-loader/-/fast-sass-loader-1.2.5.tgz",
"integrity": "sha1-0IfkyUusGSqmwTmX8KbeVLdoyQY=",
"resolved": "https://registry.npmjs.org/fast-sass-loader-china/-/fast-sass-loader-china-1.2.5.tgz",
"integrity": "sha512-b1erPnn9hSTmUq9Oh5vZAdUZulAw1M3hkKkSDdrg/rky2lnNuJXRKUbwUt11MfB6PqqcAk18h0A+QFa+PLqWbg==",
"requires": {
"async": "2.5.0",
"babel-polyfill": "6.26.0",
"cli-source-preview": "1.1.0",
"co": "4.6.0",
"fs-promise": "0.5.0",
@ -4174,7 +4154,7 @@
"dependencies": {
"loader-utils": {
"version": "1.1.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/loader-utils/-/loader-utils-1.1.0.tgz",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz",
"integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=",
"requires": {
"big.js": "3.1.3",
@ -4515,7 +4495,7 @@
},
"fs-promise": {
"version": "0.5.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/fs-promise/-/fs-promise-0.5.0.tgz",
"resolved": "https://registry.npmjs.org/fs-promise/-/fs-promise-0.5.0.tgz",
"integrity": "sha1-Q0fWv2JGVacGGkMZITw5MnatPvM=",
"requires": {
"any-promise": "1.3.0",
@ -4526,7 +4506,7 @@
"dependencies": {
"fs-extra": {
"version": "0.26.7",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/fs-extra/-/fs-extra-0.26.7.tgz",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.26.7.tgz",
"integrity": "sha1-muH92UiXeY7at20JGM9C0MMYT6k=",
"requires": {
"graceful-fs": "4.1.11",
@ -5448,7 +5428,7 @@
},
"fstream": {
"version": "1.0.11",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/fstream/-/fstream-1.0.11.tgz",
"resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
"integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
"requires": {
"graceful-fs": "4.1.11",
@ -5464,7 +5444,7 @@
},
"gauge": {
"version": "2.7.4",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/gauge/-/gauge-2.7.4.tgz",
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
"requires": {
"aproba": "1.1.2",
@ -6131,7 +6111,7 @@
},
"has-unicode": {
"version": "2.0.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/has-unicode/-/has-unicode-2.0.1.tgz",
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
"integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="
},
"hash-base": {
@ -6484,7 +6464,7 @@
},
"in-publish": {
"version": "2.0.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/in-publish/-/in-publish-2.0.0.tgz",
"resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz",
"integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E="
},
"indent-string": {
@ -8210,7 +8190,7 @@
},
"lodash.clonedeep": {
"version": "4.5.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
"resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz",
"integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8="
},
"lodash.cond": {
@ -8332,7 +8312,7 @@
},
"lodash.mergewith": {
"version": "4.6.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz",
"resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz",
"integrity": "sha1-FQzwoWeR9ZA7iJHqsVRgknS96lU="
},
"lodash.once": {
@ -8345,11 +8325,6 @@
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lodash.restparam/-/lodash.restparam-3.6.1.tgz",
"integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU="
},
"lodash.tail": {
"version": "4.1.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lodash.tail/-/lodash.tail-4.1.1.tgz",
"integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ="
},
"lodash.template": {
"version": "3.6.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lodash.template/-/lodash.template-3.6.2.tgz",
@ -8698,22 +8673,6 @@
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/minimist/-/minimist-0.0.8.tgz",
"integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0="
},
"mixin-object": {
"version": "2.0.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/mixin-object/-/mixin-object-2.0.1.tgz",
"integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=",
"requires": {
"for-in": "0.1.8",
"is-extendable": "0.1.1"
},
"dependencies": {
"for-in": {
"version": "0.1.8",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/for-in/-/for-in-0.1.8.tgz",
"integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE="
}
}
},
"mkdirp": {
"version": "0.5.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/mkdirp/-/mkdirp-0.5.1.tgz",
@ -8989,7 +8948,7 @@
},
"node-gyp": {
"version": "3.6.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/node-gyp/-/node-gyp-3.6.2.tgz",
"resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz",
"integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=",
"requires": {
"fstream": "1.0.11",
@ -9009,7 +8968,7 @@
"dependencies": {
"semver": {
"version": "5.3.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/semver/-/semver-5.3.0.tgz",
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8="
}
}
@ -9067,71 +9026,9 @@
"which": "1.3.0"
}
},
"node-sass": {
"version": "4.5.3",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/node-sass/-/node-sass-4.5.3.tgz",
"integrity": "sha1-0JydEXlkEjnRuX/8YjH9zsU+FWg=",
"requires": {
"async-foreach": "0.1.3",
"chalk": "1.1.3",
"cross-spawn": "3.0.1",
"gaze": "1.1.2",
"get-stdin": "4.0.1",
"glob": "7.1.2",
"in-publish": "2.0.0",
"lodash.assign": "4.2.0",
"lodash.clonedeep": "4.5.0",
"lodash.mergewith": "4.6.0",
"meow": "3.7.0",
"mkdirp": "0.5.1",
"nan": "2.7.0",
"node-gyp": "3.6.2",
"npmlog": "4.1.2",
"request": "2.81.0",
"sass-graph": "2.2.4",
"stdout-stream": "1.4.0"
},
"dependencies": {
"chalk": {
"version": "1.1.3",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"requires": {
"ansi-styles": "2.2.1",
"escape-string-regexp": "1.0.5",
"has-ansi": "2.0.0",
"strip-ansi": "3.0.1",
"supports-color": "2.0.0"
}
},
"gaze": {
"version": "1.1.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/gaze/-/gaze-1.1.2.tgz",
"integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
"requires": {
"globule": "1.2.0"
}
},
"globule": {
"version": "1.2.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/globule/-/globule-1.2.0.tgz",
"integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
"requires": {
"glob": "7.1.2",
"lodash": "4.17.4",
"minimatch": "3.0.4"
}
},
"lodash.assign": {
"version": "4.2.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lodash.assign/-/lodash.assign-4.2.0.tgz",
"integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc="
}
}
},
"node-sass-china": {
"version": "4.5.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/node-sass-china/-/node-sass-china-4.5.0.tgz",
"resolved": "https://registry.npmjs.org/node-sass-china/-/node-sass-china-4.5.0.tgz",
"integrity": "sha1-YnbBcNzqWBz14lwC/sqjUPcyx1Q=",
"requires": {
"async-foreach": "0.1.3",
@ -9156,7 +9053,7 @@
"dependencies": {
"chalk": {
"version": "1.1.3",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/chalk/-/chalk-1.1.3.tgz",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
"requires": {
"ansi-styles": "2.2.1",
@ -9168,7 +9065,7 @@
},
"gaze": {
"version": "1.1.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/gaze/-/gaze-1.1.2.tgz",
"resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
"integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
"requires": {
"globule": "1.2.0"
@ -9176,7 +9073,7 @@
},
"globule": {
"version": "1.2.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/globule/-/globule-1.2.0.tgz",
"resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
"integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
"requires": {
"glob": "7.1.2",
@ -9186,7 +9083,7 @@
},
"lodash.assign": {
"version": "4.2.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lodash.assign/-/lodash.assign-4.2.0.tgz",
"resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
"integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc="
}
}
@ -9343,7 +9240,7 @@
},
"nopt": {
"version": "3.0.6",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/nopt/-/nopt-3.0.6.tgz",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
"integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
"requires": {
"abbrev": "1.1.0"
@ -9395,8 +9292,8 @@
},
"npmlog": {
"version": "4.1.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/npmlog/-/npmlog-4.1.2.tgz",
"integrity": "sha1-CKfyqL9zRgR3mp76StXMcXq7lUs=",
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
"requires": {
"are-we-there-yet": "1.1.4",
"console-control-strings": "1.1.0",
@ -12888,7 +12785,7 @@
},
"sass-graph": {
"version": "2.2.4",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/sass-graph/-/sass-graph-2.2.4.tgz",
"resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz",
"integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=",
"requires": {
"glob": "7.1.2",
@ -12897,35 +12794,6 @@
"yargs": "7.1.0"
}
},
"sass-loader": {
"version": "6.0.6",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/sass-loader/-/sass-loader-6.0.6.tgz",
"integrity": "sha1-6dXmwfFV+qMqSybXqbcQfCJeQPk=",
"requires": {
"async": "2.5.0",
"clone-deep": "0.3.0",
"loader-utils": "1.1.0",
"lodash.tail": "4.1.1",
"pify": "3.0.0"
},
"dependencies": {
"loader-utils": {
"version": "1.1.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/loader-utils/-/loader-utils-1.1.0.tgz",
"integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=",
"requires": {
"big.js": "3.1.3",
"emojis-list": "2.1.0",
"json5": "0.5.1"
}
},
"pify": {
"version": "3.0.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/pify/-/pify-3.0.0.tgz",
"integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
}
}
},
"sax": {
"version": "1.2.4",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/sax/-/sax-1.2.4.tgz",
@ -12957,14 +12825,9 @@
}
}
},
"scss-loader": {
"version": "0.0.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/scss-loader/-/scss-loader-0.0.1.tgz",
"integrity": "sha1-6uAXueDzjBKlMtslwiC5Avs05nE="
},
"scss-tokenizer": {
"version": "0.2.3",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
"resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
"integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
"requires": {
"js-base64": "2.1.9",
@ -12973,7 +12836,7 @@
"dependencies": {
"source-map": {
"version": "0.4.4",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/source-map/-/source-map-0.4.4.tgz",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
"requires": {
"amdefine": "1.0.1"
@ -13119,32 +12982,6 @@
"crypt": "0.0.2"
}
},
"shallow-clone": {
"version": "0.1.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/shallow-clone/-/shallow-clone-0.1.2.tgz",
"integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=",
"requires": {
"is-extendable": "0.1.1",
"kind-of": "2.0.1",
"lazy-cache": "0.2.7",
"mixin-object": "2.0.1"
},
"dependencies": {
"kind-of": {
"version": "2.0.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/kind-of/-/kind-of-2.0.1.tgz",
"integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=",
"requires": {
"is-buffer": "1.1.5"
}
},
"lazy-cache": {
"version": "0.2.7",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/lazy-cache/-/lazy-cache-0.2.7.tgz",
"integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U="
}
}
},
"shallow-equal": {
"version": "1.0.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/shallow-equal/-/shallow-equal-1.0.0.tgz",
@ -13407,7 +13244,7 @@
},
"stdout-stream": {
"version": "1.4.0",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/stdout-stream/-/stdout-stream-1.4.0.tgz",
"resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz",
"integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=",
"requires": {
"readable-stream": "2.3.3"
@ -13814,7 +13651,7 @@
},
"tar": {
"version": "2.2.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/tar/-/tar-2.2.1.tgz",
"resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz",
"integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=",
"requires": {
"block-stream": "0.0.9",
@ -15166,8 +15003,8 @@
},
"wide-align": {
"version": "1.1.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/wide-align/-/wide-align-1.1.2.tgz",
"integrity": "sha1-Vx4PGwYEY268DfwhsDObvjE0FxA=",
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz",
"integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==",
"requires": {
"string-width": "1.0.2"
}
@ -15382,12 +15219,14 @@
}
},
"ykit-config-es6": {
"version": "0.4.1",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/ykit-config-es6/-/ykit-config-es6-0.4.1.tgz",
"integrity": "sha1-prmx3IegeplSjVeKgXy6tfYaT9A=",
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/ykit-config-es6/-/ykit-config-es6-1.1.0.tgz",
"integrity": "sha512-42ykz8wVk+7uz8bb4LIbnK4iCR/rmPEZ+Hgp31d3zGSbnn/fhsaIjWUlCZK+cyAdMXJFojIersqK3qWo0rbu6g==",
"requires": {
"babel-core": "6.26.0",
"babel-loader": "6.4.1",
"babel-plugin-transform-class-properties": "6.24.1",
"babel-plugin-transform-decorators-legacy": "1.3.4",
"babel-plugin-transform-es2015-modules-simple-commonjs": "0.3.0",
"babel-plugin-transform-runtime": "6.23.0",
"babel-polyfill": "6.26.0",
@ -15441,6 +15280,34 @@
"ykit-config-es6": "0.4.1"
},
"dependencies": {
"async": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/async/-/async-1.5.0.tgz",
"integrity": "sha1-J5ZkJyNXOFlWVjP8YnRES+4vjOM="
},
"happypack": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/happypack/-/happypack-3.1.0.tgz",
"integrity": "sha1-i8VeNwG6z/cY04icuItQIWQcrVk=",
"requires": {
"async": "1.5.0",
"json-stringify-safe": "5.0.1",
"loader-utils": "0.2.16",
"mkdirp": "0.5.1",
"serialize-error": "2.1.0"
}
},
"loader-utils": {
"version": "0.2.16",
"resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.16.tgz",
"integrity": "sha1-8IYyBm7YKCg13/iN+1JwR2Wt7m0=",
"requires": {
"big.js": "3.1.3",
"emojis-list": "2.1.0",
"json5": "0.5.1",
"object-assign": "4.1.1"
}
},
"react": {
"version": "15.4.2",
"resolved": "https://repo.corp.qunar.com/artifactory/api/npm/npm-qunar/react/-/react-15.4.2.tgz",
@ -15460,6 +15327,23 @@
"loose-envify": "1.3.1",
"object-assign": "4.1.1"
}
},
"ykit-config-es6": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/ykit-config-es6/-/ykit-config-es6-0.4.1.tgz",
"integrity": "sha512-V0XWfLdN7ea1fb8FRr9tGBTX/Ep8PtoR12yE1Pjsm5yCdCvxNrES0Lc8tzs+frXL/KXv3vTXG2jshCtO7wDmXw==",
"requires": {
"babel-core": "6.26.0",
"babel-loader": "6.4.1",
"babel-plugin-transform-es2015-modules-simple-commonjs": "0.3.0",
"babel-plugin-transform-runtime": "6.23.0",
"babel-polyfill": "6.26.0",
"babel-preset-es2015": "6.24.1",
"babel-preset-es2017": "6.24.1",
"babel-preset-stage-0": "6.24.1",
"extend": "3.0.1",
"happypack": "3.1.0"
}
}
}
}

View File

@ -44,7 +44,7 @@
"eslint-plugin-react": "^7.1.0",
"express": "^4.15.3",
"extract-text-webpack-plugin": "2.0.0",
"fast-sass-loader": "^1.2.5",
"fast-sass-loader-china": "^1.2.5",
"fs-extra": "^3.0.1",
"gulp": "^3.9.1",
"gulp-babel": "^6.1.2",
@ -71,7 +71,6 @@
"moment": "^2.18.1",
"mongoose": "4.10.8",
"mongoose-auto-increment": "^5.0.1",
"node-sass": "^4.5.3",
"node-sass-china": "^4.5.0",
"nodemailer": "^4.0.1",
"ora": "^1.3.0",
@ -87,8 +86,6 @@
"redux-promise": "^0.5.3",
"redux-thunk": "^2.2.0",
"request": "^2.81.0",
"sass-loader": "^6.0.6",
"scss-loader": "0.0.1",
"sha1": "^1.1.1",
"string-replace-webpack-plugin": "^0.1.3",
"style-loader": "^0.18.2",
@ -98,7 +95,8 @@
"validate-commit-msg": "^2.12.2",
"webpack": "^3.5.5",
"webpack-dev-middleware": "^1.12.0",
"ykit-config-antd": "^0.1.3"
"ykit-config-antd": "^0.1.3",
"ykit-config-es6": "^1.1.0"
},
"devDependencies": {
"babel-plugin-import": "^1.3.1",

File diff suppressed because one or more lines are too long

3023
prd/lib.js

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

View File

@ -140,11 +140,19 @@
<div class="content-right markdown-body use-sidebar" role="main">
<h2 class="subject" id="介绍">介绍 <a class="hashlink" href="#介绍">#</a></h2><h2 class="subject" id="接口配置">接口配置 <a class="hashlink" href="#接口配置">#</a></h2><h4 class="subject" id="4.3_接口编辑">4.3 接口编辑 <a class="hashlink" href="#4.3_接口编辑">#</a></h4><p>添加完接口点击新添加的接口,跳转到接口预览页面,可看到刚才填写的信息。接口的详细信息点击编辑功能进行添加</p>
<h4 class="subject" id="4.4_测试接口">4.4 测试接口 <a class="hashlink" href="#4.4_测试接口">#</a></h4><p>点击运行tab,可进入到接口测试页面,首先安装chrome crossRequest扩展才可正常使用此功能
<h2 class="subject" id="介绍">介绍 <a class="hashlink" href="#介绍">#</a></h2><h2 class="subject" id="接口配置">接口配置 <a class="hashlink" href="#接口配置">#</a></h2><p><a href="./usage-创建第一个API.html#新建_编辑接口">新建接口</a> 后,点击新添加的接口,右侧可以看到接口的预览信息,点击右侧的 <code>编辑</code> Tab项进入编辑面板。</p>
<p>在改面板中你可以看到接口的基本信息(接口名称、分类、路径),除此以外,你还可以完善以下接口信息:</p>
<ul>
<li>状态: 用于标识接口是否开发完成。</li><li>接口描述: 用简短的文字描述接口的作用。</li><li>query: 接口url的查询字符串。</li><li>请求 Headers: http 请求头字段。</li><li>请求 Body: http 请求 body 部分。</li><li>请求 Body: http 请求 body 部分。</li><li><p>响应 Body: 模拟返回结果。</p>
<blockquote>
<p>响应 Body 分为 <code>json</code> &amp; <code>raw</code> 两种形式</p>
</blockquote>
</li><li><p>是否开启邮件通知:开启后将此次接口的改动以邮件的形式发送至项目组所有成员。</p>
</li></ul>
<h2 class="subject" id="接口调试">接口调试 <a class="hashlink" href="#接口调试">#</a></h2><!-- 点击运行tab,可进入到接口测试页面,首先安装chrome crossRequest扩展才可正常使用此功能
<img src="./images/interface_run.png" width="800" style="margin:0px auto;display:block;" alt="图片名称" align=center />
点击保存按钮可把当前测试保存到测试集,方便下次调试</p>
<h2 class="subject" id="接口调试">接口调试 <a class="hashlink" href="#接口调试">#</a></h2>
点击保存按钮可把当前测试保存到测试集,方便下次调试 -->
</div>
</div>

View File

@ -109,6 +109,10 @@
<li >
<a href="#修改项目">修改项目</a>
</li>
<li >
<a href="#删除项目">删除项目</a>
</li>
</ul>
@ -136,7 +140,26 @@
<div class="content-right markdown-body use-sidebar" role="main">
<h2 class="subject" id="新建项目">新建项目 <a class="hashlink" href="#新建项目">#</a></h2><h2 class="subject" id="修改项目">修改项目 <a class="hashlink" href="#修改项目">#</a></h2>
<h2 class="subject" id="新建项目">新建项目 <a class="hashlink" href="#新建项目">#</a></h2><p>点击右上角的 <code>+</code> 新建项目,进入新建项目页面。</p>
<p><img src="./images/usage/project_add.png" /></p>
<p>在新建项目页,填写项目信息:</p>
<blockquote>
<ul>
<li>项目名称不允许重复,包括其他分组</li><li>基本路径为接口统一添加了前缀</li><li>新建项目页只列出了部分配置,其他详细配置(环境配置、项目图标等)需要进入项目页的“设置”面板进行配置。</li></ul>
</blockquote>
<p><img src="./images/usage/project_add_panel.png" /></p>
<h2 class="subject" id="修改项目">修改项目 <a class="hashlink" href="#修改项目">#</a></h2><p>在项目页点击上方的 <code>设置</code> Tab 进入项目设置面板,这个面板涵盖了项目的所有配置。</p>
<p><img src="./images/usage/project_setting.png" /></p>
<p>这里比新建项目页面新增的功能如下:</p>
<h3 class="subject" id="修改项目图标">修改项目图标 <a class="hashlink" href="#修改项目图标">#</a></h3><p>点击项目图标,可以修改图标及背景色:</p>
<p><img src="./images/usage/project_setting_logo.png" /></p>
<h3 class="subject" id="配置环境">配置环境 <a class="hashlink" href="#配置环境">#</a></h3><p><code>环境配置</code> 一项可以添加该项目下接口的实际环境,供 <a href="./usage-使用测试集.html">接口测试</a> 使用。</p>
<p><img src="./images/usage/project_setting_env.png" /></p>
<h2 class="subject" id="删除项目">删除项目 <a class="hashlink" href="#删除项目">#</a></h2><p>点击下方的删除按钮,输入项目名称进行删除。</p>
<blockquote>
<p>删除项目是高风险操作,因此 YApi 对这个操作进行了特别的约束。</p>
</blockquote>
</div>
</div>

View File

@ -1 +0,0 @@
window.WEBPACK_ASSETS = {"index.js":{"js":"index@1f9686ea53bc4f0c765a.js","css":"index@1f9686ea53bc4f0c765a.css"},"lib":{"js":"lib@37aefd9cc41e6ef59eba.js"},"lib2":{"js":"lib2@122f3773fc11dd227117.js"},"manifest":{"js":"manifest@b67af9f8b578904e66c5.js"}}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
(function(e){function i(t){if(n[t])return n[t].exports;var r=n[t]={exports:{},id:t,loaded:false};e[t].call(r.exports,r,r.exports,i);r.loaded=true;return r.exports}var t=window["webpackJsonp"];window["webpackJsonp"]=function(o,u){var a,f,l=0,c=[];for(;l<o.length;l++){f=o[l];if(r[f])c.push.apply(c,r[f]);r[f]=0}for(a in u){e[a]=u[a]}if(t)t(o,u);while(c.length)c.shift().call(null,i);if(u[0]){n[0]=0;return i(0)}};var n={};var r={3:0};i.e=function(t,n){if(r[t]===0)return n.call(null,i);if(r[t]!==undefined){r[t].push(n)}else{r[t]=[n];var s=document.getElementsByTagName("head")[0];var o=document.createElement("script");o.type="text/javascript";o.charset="utf-8";o.async=true;o.src=i.p+""+t+".chunk.min.js";s.appendChild(o)}};i.m=e;i.c=n;i.p=""})([])

View File

@ -28,7 +28,7 @@ function fileExist (filePath){
function initPlugins(){
if(config.plugins && Array.isArray(config.plugins)){
config.plugins = config.plugins.filter(item=>{
return fileExist(path.resolve(__dirname, 'node_modules/yapi-plugin-' + item + '/client.js'))
return fileExist(path.resolve(__dirname, 'plugins/yapi-plugin-' + item + '/client.js'))
})
}
}
@ -168,7 +168,7 @@ module.exports = {
loader: ykit.ExtractTextPlugin.extract(
require.resolve('css-loader')
+ '?sourceMap!'
+ require.resolve('fast-sass-loader') + '?sourceMap'
+ require.resolve('fast-sass-loader-china') + '?sourceMap'
)
})
baseConfig.module.preLoaders.push({