Trung cấp
4 tháng 10, 2026

Tìm lỗi: Go

Một đoạn mã. Tìm ra lỗi, hoặc chứng minh là không có lỗi nào.

go
1package main
2
3import (
4	"encoding/json"
5	"net/http"
6)
7
8type Payment struct {
9	Amount float64 `json:"amount"`
10	UserID string  `json:"userId"`
11}
12
13func createPayment(w http.ResponseWriter, r *http.Request) {
14	var p Payment
15	if err := json.NewDecoder(r.Body).Decode(&p); err != nil {
16		http.Error(w, "invalid json", 400)
17		return
18	}
19	if err := chargeAccount(p.UserID, p.Amount); err != nil {
20		http.Error(w, "charge failed", 500)
21		return
22	}
23	w.WriteHeader(201)
24}
25

Nhấp vào những dòng gây ra vấn đề.

Phán quyết của bạn

Một lần thử mỗi ngày. Đáp án hiện ra ngay sau đó.

Giữ chuỗi ngày của bạn

Tạo tài khoản để giữ chuỗi ngày và theo dõi tiến độ của bạn.

Tạo tài khoản