giúp em xử lí object
-
cho em hỏi tại sao body.code nó không có giá trị
-
@thânthiệnthiênthần-thậtthàthôngthái-thảotrẻtrâu
Bạn thử set header ở api bằng lệnh này xemres.setHeader('Content-Type', 'application/json');
Có thể json của bạn chứa các ký tự đặc biệt nên nó không parse được. Cái này mình không chắc nhé
Chờ cao thủ nào ân giật xem
-
Nhìn vào dòng console thì biến body khi đã JSON.parse vẫn là kiểu string, bạn kiểm tra bằng console.log(typeof(body)); để kiểm tra .
Bạn cho console.log(body) ở trước JSON.stringify(body): chắc sẽ là '{"body":"xxxyyy"zzz"}', do body content chứa ký tự double quotes nên bạn cần xử lý các chuỗi này hoặc xử lý chuỗi body trước khi stringify.
-
@Khoa-Lê-Duy đó là set header trả về của
express
mà.request
là lib độc lập.
@thânthiệnthiênthần-thậtthàthôngthái-thảotrẻtrâu Nếu bạn chỉ lấy json object, bạn set json option sangtrue
cho request :request.get({url:doc.urlapi,json:true},function(err,resp,body){ console.log(body.code); })
-
@hidemanvn Mình cũng không chăc mà
Trước cũng bị nhưng không nhớ fix bằng cách nào.:)
-
@hidemanvn trả về body.code undefined lun anh
-
@thânthiệnthiênthần-thậtthàthôngthái-thảotrẻtrâu bạn đã kiểu tra params
err
chưa.
Nếu url bạn get trả về một json documents thì không có lỗi gì. Nhưng nó không dạng json, thì mới dùng Parse mà trong quá trình này bạn phải đưa vàotry...catch
.
Khi lập trình phải cố gắng catch được các lỗi, không được bỏ qua lỗi nào cả. Đấy là bug nhỏ thôi, với dự án lớn hơn mà không cẩn thận thì mò cả tháng bạn nha.
-
@thânthiệnthiênthần-thậtthàthôngthái-thảotrẻtrâu Bạn có thể cài vscode để bebug nếu ko dự đoán được lỗi.
-
lỗi ở api
em tãi code api lên c9 test thử chạy bình thường
nhưng api ở heroku nó chạy cũng trả về dữ liệu giống nhau mà truy cập vào object code không được