Vì ta cần upload hình từ trang web, nên Content-Type của request sẽ là multipart/form-data, nên ta sẽ dùng hàm NewReaderMultipart để lấy thông tin form-data từ request ra...
=> vụ multipart này phải truyền body ra sao chỉ mình với!
Postman chỉ có cách chọn Bearer Token, sau khi chọn xong click sang tab Header thì nó sẽ auto add vô { "Authorization": Bearer <AccessToken> }. Muốn sửa thì sửa bên tab Authorization
Ngoài tool Postman mình cũng đã chạy thử tool khác, cũng đã { "Authorization": Bearer <AccessToken> } rồi nhưng vẫn lỗi "Unauthorized"
-> cho mình confirm lại là accesstoken của login lấy từ bài 5 part 1 đúng hem, hay có sửa j src code POST login ở part 2 nên cần build lại hem? với lại bạn đã chạy Postman POST book được rồi đúng ko? (sorry ko có ý nghi ngờ gì, tại thấy bạn chỉ ghi chữ chứ ko có screenshot nên ko biết là bạn có chạy thật POST chưa? ^^)
Khi tìm kiếm thì lúc duyệt đến leaf node chứa nhiều cục index thì db nó sẽ tìm kiếm theo tuyến tính độ khó O(n) (như phần a mô tả duyệt là root node và branch node) hay bằng cách khác như binary search...vậy a
@hmquan08011996
uh nhỉ, thanks bạn đã chỉ, mình làm theo đúng là như vậy, đã có lambda policy rồi thì KO add thêm vô bucket policy nữa: terraform-start/policies/lambda_policy.json
-> lí do mà trưa mình chạy ko được vì clone từ git về thì bucket name trong lambda_policy.json vẫn là name cũ, mình KO bit nên cứ chạy terraform thì sai name nên ko có quyền put! Cần phải đổi thành name mới tương ứng với S3 của mình
-> bắt buộc phải đổi vì bucket name là unique, chọn name trong bài của bạn sẽ báo lỗi exist!
(mình nghĩ vụ này chắc user khác làm theo cũng bị dính giống mình đấy, vì ít ai trước khi chạy terraform mà check all src code để phát hiện lambda_policy.json)
@tquangdo còn cái policy của thằng S3 bucket dùng để upload image thì sẽ giống như của thằng S3 bucket dùng host trang SPA nha bạn. Còn quyền s3:PutObject thì mình sẽ gán quyền đó cho Lambda nha (do mình không có đề cập tới nó trong bài 🤣), nó nằm ở folder policies của terraform-start. Còn ở trên nếu mình thêm s3:PutObject vào thì có nghĩa là ai cũng có quyền ghi vào S3 bucket của mình cả
THẢO LUẬN
Hịn quá, cảm ơn tác giả.
@tquangdo mình thấy truyền đúng r, tại mình test bằng code FE chứ ko có dùng postman, này để mình kiểm tra lại nha
@hmquan08011996
@hmquan08011996 vãi!!!! =]]]]
sao mình upload lên heroku nó bị lỗi h10,h12,h14
mình kiểm tra lại rồi, bạn dùng IdToken mới đúng nha 😂
còn không thì bạn chạy terraform ở bai-6 rồi thử lại phần create book xem, trong đó có phần đã cấu hình Authorization chính xác
bạn chụp phần tạo ở chỗ Authorizers cho mình xem thử
@hmquan08011996
@hmquan08011996 hic, chọn rồi vẫn KO dc =[[[[
Bearer Token, sau khi chọn xong click sang tabHeaderthì nó sẽ auto add vô { "Authorization": Bearer <AccessToken> }. Muốn sửa thì sửa bên tabAuthorizationỞ phần TABLE ACCESS BY INDEX ROWID tại sao TABLE ACCESS BY INDEX ROWID lại đc thực thi trước INDEX UNIQUE SCAN vậy ạ
này mình thiếu, phải là
{ "Authorization": Bearer <AccessToken> }mới đúng 🤣@tquangdo bên postman, bạn chọn Bearer Token thử nha
@tquangdo à, vậy chắc mình sẽ thêm phần chỉ đổi tên của S3 bucket nữa. Cảm ơn bạn đã góp ý nha
Khi tìm kiếm thì lúc duyệt đến leaf node chứa nhiều cục index thì db nó sẽ tìm kiếm theo tuyến tính độ khó O(n) (như phần a mô tả duyệt là root node và branch node) hay bằng cách khác như binary search...vậy a
deploy API rồi nhé ^^ nếu được phiền bạn screenshot cái header "Authorization" cho mình refer dc hem?
@hmquan08011996
@hmquan08011996
staging/login> lấyAccessToken> bỏ vô test thử Authorizer cũng báo lỗi tương tự! =[[[@hmquan08011996 uh nhỉ, thanks bạn đã chỉ, mình làm theo đúng là như vậy, đã có lambda policy rồi thì KO add thêm vô bucket policy nữa:
terraform-start/policies/lambda_policy.jsonlambda_policy.jsonvẫn là name cũ, mình KO bit nên cứ chạy terraform thì sai name nên ko có quyền put! Cần phải đổi thành name mới tương ứng với S3 của mìnhlambda_policy.json)@tquangdo còn cái policy của thằng S3 bucket dùng để upload image thì sẽ giống như của thằng S3 bucket dùng host trang SPA nha bạn. Còn quyền s3:PutObject thì mình sẽ gán quyền đó cho Lambda nha (do mình không có đề cập tới nó trong bài 🤣), nó nằm ở folder policies của terraform-start. Còn ở trên nếu mình thêm s3:PutObject vào thì có nghĩa là ai cũng có quyền ghi vào S3 bucket của mình cả