第三關
挑戰連結
https://lidemy-http-challenge.herokuapp.com/lv3?token={5566NO1}
JavaScript
const request = require('request')
const BASE_URL = 'https://lidemy-http-challenge.herokuapp.com/api'
request.post(
{ url: `${BASE_URL}/books`,
form: {
name: '《大腦喜歡這樣學》',
ISBN: '9789863594475'
}
},
function (error, response, body) {
const data = JSON.parse(body)
console.log(data)
}
)
回傳訊息
https://lidemy-http-challenge.herokuapp.com/lv3?token={5566NO1}&id=1989
第四關
挑戰連結
https://lidemy-http-challenge.herokuapp.com/lv4?token={LEarnHOWtoLeArn}
JavaScript
const request = require('request')
const BASE_URL = 'https://lidemy-http-challenge.herokuapp.com/api'
request(
{
url: `${BASE_URL}/books`,
},
function (error, response, body) {
const data = JSON.parse(body)
for (let i=0; i< data.length; i++) {
if (data[i].author === '村上春樹') {
console.log(data[i].id + ' ' + data[i].name)
}
}
}
)
回傳訊息
https://lidemy-http-challenge.herokuapp.com/lv4?token={LEarnHOWtoLeArn}&id=79
第五關
挑戰連結
https://lidemy-http-challenge.herokuapp.com/lv5?token={HarukiMurakami}
題目說明
昨天有個人匆匆忙忙跑過來說他不小心捐錯書了,想要來問可不可以把書拿回去。
跟他溝通過後,我就把他捐過來的書還他了,所以現在要把這本書從系統裡面刪掉才行。
那本書的 id 是 23,你可以幫我刪掉嗎?
JavaScript
const request = require('request')
const process = require('process')
const BASE_URL = 'https://lidemy-http-challenge.herokuapp.com/api'
const arg = process.argv[2]
request(
{ method: 'DELETE',
url: `${BASE_URL}/books/${arg}`,
},
function (error, response, body) {
const data = JSON.parse(body)
console.log(data)
}
)
回傳訊息
{"message":"\n咦...是刪掉了沒錯,但總覺得哪裡怪怪的,算了,先這樣吧!下一關的 token 為 {CHICKENCUTLET}\n"}
第六關
挑戰連結
https://lidemy-http-challenge.herokuapp.com/lv6?token={CHICKENCUTLET}
題目說明
我終於知道上次哪裡怪怪的了!
照理來說要進入系統應該要先登入才對,怎麼沒有登入就可以新增刪除...
這太奇怪了,我已經回報給那邊的工程師了,他們給了我一份新的文件:https://gist.github.com/aszx87410/1e5e5105c1c35197f55c485a88b0328a。
這邊是帳號密碼,你先登入試試看吧,可以呼叫一個 /me 的 endpoint,裡面會給你一個 email。
把 email 放在 query string 上面帶過來,我看看是不是對的。
帳號:admin
密碼:admin123
JavaScript
const request = require('request')
const BASE_URL = 'https://lidemy-http-challenge.herokuapp.com/api/v2'
request(
{ method: 'GET',
url: `${BASE_URL}/me`,
headers: {
'Authorization': 'Basic YWRtaW46YWRtaW4xMjM=',
}
},
(error, response, body) => {
const data = JSON.parse(body)
console.log(data)
}
)
回傳訊息
{ username: 'admin', email: 'lib@lidemy.com' }
email 放在 query string 上面帶過來
https://lidemy-http-challenge.herokuapp.com/lv6?token={CHICKENCUTLET}&email=lib@lidemy.com
第七關
挑戰連結
https://lidemy-http-challenge.herokuapp.com/lv7?token={SECurityIsImPORTant}
題目說明
那邊的工程師說系統整個修復完成了,剛好昨天我們發現有一本書被偷走了...
這本書我們已經買第五次了,每次都被偷走,看來這本書很熱門啊。
我們要把這本書從系統裡面刪掉,就拜託你了。
對了!記得要用新的系統喔,舊的已經完全廢棄不用了。
書的 id 是 89。
JavaScript
const request = require('request')
const process = require('process') // 這行可以不用寫
const BASE_URL = 'https://lidemy-http-challenge.herokuapp.com/api/v2'
const arg = process.argv[2]
request(
{ method: 'DELETE',
url: `${BASE_URL}/books/${arg}`,
headers: {
'Authorization': 'Basic YWRtaW46YWRtaW4xMjM=',
}
},
(error, response, body) => {
const data = JSON.parse(body)
console.log(data)
}
)
回傳訊息
{ message: '\n希望下一次進這本書的時候不會再被偷走了。下一關的 token 為 {HsifnAerok}\n' }