下位10%のダメなエンジニアにだけ解けないパズル

最初問題を見たときはそもそも何が問題なのか、何をすればいいのか1%もわからなかった。今日色々教えてもらいながらやってみたのでメモ!ネタバレ注意


問題はコチラ


まず、Please call my APIs.とあるので、APIを呼び出す。その他ヒントは「call/me」と「clue:RESTful」のふたつ。


RESTとは、Webのアーキテクチャスタイル(思想設計)のひとつ。サーバーにリクエストを送ってレスポンスが来るように、パラメータを指定し特定のURLにHTTPでアクセス。その後XMLで記述されたメッセージが返ってくる。RESTfulとは、RESTの規則に従った、RESTらしいWebサービスのこと、とのことだけど、日本語だよね?ってくらい意味がわからない。でもとりあえず先にすすんで理解していきます。


参考:RESTfulとは


1.ターミナルを起動

2.curl http://challenge-your-limits.herokuapp.com/call/me/ でenter

→curl(カール)はURLシンタックスを用いてファイルを送信または受信するコマンドラインツール。まだよくわからないけど、多分この記述によってデータのGET・POSTなどができるっぽい。URL末尾にはヒントにあった「call/me」を記述して、レスポンスを得る感じ。

3."Almost! It's not GET. Keep trying."とメッセージが返ってくる

→GETじゃないよ、POSTだよと言われている。curlはデフォルトでGETなので、POSTの記述をする。

4.curl -X POST http://challenge-your-limits.herokuapp.com/call/me/ でenter

5."Great! Please register as /challenge_users"と返ってくる

6.curl -X POST http://challenge-your-limits.herokuapp.com/challenge_users/でenter

→call/meをchallenge_usersに変更。

7."Validation Error, [:name, \"can't be blank\"]"と返ってくる

→nameカラムがブランクになっている、なので名前を適当に入れる

8.curl -X POST http://challenge-your-limits.herokuapp.com/challenge_users/ -d "name=hogehoge"でenter

9."Validation Error, [:email, \"can't be blank\"]"と返ってくる

→次は同じ手順でemailを記述

10.curl -X POST http://challenge-your-limits.herokuapp.com/challenge_users/ -d "name=hogehoge" -d "email=hugahuga@hugamail.com" でenter

11."Thanks! Please access to http://challenge-your-limits.herokuapp.com/challenge_users/token/UCE8ApY6zS5PcQfHUXznLcNcUjo from your web browser. "と返ってくる

12.言われた通りにアクセスして、コメントを追加して終了

Happy Coding

プログラミング初心者が日々前進していくブログ

0コメント

  • 1000 / 1000