Cannot POST /dummy_json/login_result.json( npm local-web-server のインストール)
npmコマンドで起動する、lite-serverで、
POST methodでアクセスするとエラーになる。
Cannot POST /dummy_json/login_result.json
local web server
local web serverなら、いろいろできるらしい。
https://www.npmjs.com/package/local-web-server
npm install local-web-server # 失敗 sudo npm install -g local-web-server
一行目のコマンドだとインストールしても、wsコマンドが見つからない。二行目だとうまくいった。
-gはglobalでインストールらしい。
TODO:
package.jsonのdevDependencies を変える。
local-web-server@1.2.1 node_modules/local-web-server ├── koa-conditional-get@1.0.3 ├── reduce-flatten@1.0.0
mock応答の作成
angular2プロジェクトのrootディレクトリで、新規作成。
vi .local-web-server.json
{ "mocks": [ { "route": "/mock_login", "responses": [ { "request": { "method": "GET" }, "response": { "body": "<h1>Mock response for 'GET' request on /three</h1>" } }, { "request": { "method": "POST" }, "response": { "status": 200, "body": { "result": "true", "abbbcc": "dddeeff" } } } ] } ] }
localhost:8000/three
http://localhost:8000/mock_login
lite-serverの代わりに起動
npm startでlocal web serverを起動させる。
package.jsonを以下のように書き換えた。
"start": "concurrently \"npm run tsc:w\" \"ws\" ",
ソースファイルの変更検知と自動コンパイルはされるみたいだけど、
ブラウザで見てるときに変更が同期されない、気がする。
ブラウザをリロードしないといけない。
{ "name": "idempiere-angular2-webui-feasibility-study", "version": "1.0.0", "scripts": { "start": "concurrently \"npm run tsc:w\" \"ws\" ", "tsc": "tsc", "tsc:w": "tsc -w", "lite": "lite-server", "typings": "typings", "postinstall": "typings install" }, "license": "ISC", "dependencies": { "angular2": "2.0.0-beta.9", "systemjs": "0.19.24", "es6-promise": "^3.0.2", "es6-shim": "^0.33.3", "reflect-metadata": "0.1.2", "rxjs": "5.0.0-beta.2", "zone.js": "0.5.15" }, "devDependencies": { "concurrently": "^2.0.0", "lite-server": "^2.1.0", "local-web-server": "^1.2.1", "typescript": "^1.8.7", "typings":"^0.7.5" } }