Chuyển cookie Netscape sang JSON: cách đổi và nhập cookie X
Digital Account Market
· Cập nhật lần cuối:
Bạn có một tệp cookies.txt, nhưng tiện ích hoặc công cụ tự động hóa bạn muốn dùng chỉ nhận mảng cookie dạng JSON. Chuyển cookie Netscape sang JSON là việc nhỏ khi bạn hiểu từng cột trong tệp nghĩa là gì, và chỉ mất vài giây nếu dùng công cụ chuyển đổi cho bạn biết chính xác dòng nào nó không đọc được.
Hướng dẫn này giải thích định dạng tệp cookie Netscape, cho bạn thấy phía JSON trông như thế nào và đi qua công cụ chuyển đổi miễn phí. Sau đó, bài hướng dẫn cách nhập kết quả vào trình quản lý cookie và kiểm tra xem phiên đăng nhập X có thật sự hoạt động không. Bạn cũng sẽ biết vài lỗi dán gây ra phần lớn thất bại và cách xử lý khi một công cụ yêu cầu Base64 thay vì JSON.
Cookie Netscape sang JSON: bảy cột phân tách bằng tab
Tệp cookie Netscape là văn bản thuần với mỗi dòng một cookie. Mỗi dòng gồm bảy trường được phân tách bằng một ký tự tab duy nhất, luôn theo cùng một thứ tự. Curl, wget và hầu hết tiện ích trình duyệt xuất cookie đều ghi theo bố cục này.
- Tên miền: nơi cookie có hiệu lực, ví dụ .x.com. Dấu chấm ở đầu nghĩa là bao gồm cả các tên miền phụ.
- Cờ tên miền phụ: TRUE hoặc FALSE, cho biết các tên miền phụ có được nhận cookie hay không.
- Đường dẫn: thường chỉ là một dấu gạch chéo, nghĩa là toàn bộ trang web.
- Secure: TRUE nếu cookie chỉ được gửi qua HTTPS.
- Hết hạn: dấu thời gian Unix tính bằng giây. Số 0 nghĩa là cookie phiên, kết thúc khi đóng trình duyệt.
- Tên: tên của cookie, ví dụ auth_token hoặc ct0.
- Giá trị: bản thân giá trị cookie, tức phần cần giữ bí mật.
Có hai trường hợp đặc biệt thường gặp. Các dòng bắt đầu bằng dấu thăng là chú thích và bị bỏ qua, trừ một ngoại lệ: dòng bắt đầu bằng tiền tố #HttpOnly_ là một cookie thật, tên miền nằm ngay sau tiền tố và được đánh dấu là HTTP-only. Một số công cụ xuất còn để trống giá trị cuối, nên một dòng sáu trường vẫn có thể xảy ra và vẫn hợp lệ.
Định dạng cookie JSON mà các tiện ích mong đợi
Việc nhập cookie JSON thường là một mảng các đối tượng, mỗi cookie một đối tượng, mỗi trường một khóa. Công cụ chuyển đổi miễn phí trên trang này tạo ra các khóa tên domain, includeSubdomains, path, secure, expires, name, value và httpOnly. Nó phản ánh bảy cột, cộng thêm một cờ cho tiền tố HTTP-only.
Hãy lưu ý rằng các tiện ích không hoàn toàn giống nhau. API tiện ích trình duyệt thường gọi trường hết hạn là expirationDate chứ không phải expires, và một số còn thêm các khóa như hostOnly hay sameSite. Trước khi chuyển một lô lớn, hãy xuất một cookie từ tiện ích bạn định nhập vào và so sánh tên khóa với kết quả của công cụ chuyển đổi. Nếu tên khác nhau, thường chỉ cần tìm và thay thế tên khóa là xong.
Chuyển cookies.txt sang JSON bằng công cụ miễn phí
Cách nhanh nhất là dùng công cụ chuyển cookie Netscape sang JSON. Công cụ chạy ngay trong trình duyệt của bạn, nên văn bản bạn dán không được gửi lên hay lưu trên máy chủ. Dù vậy, hãy coi nội dung như mật khẩu, vì giá trị cookie là thông tin xác thực phiên đang hoạt động.
- Dán toàn bộ cookies.txt, kể cả các dòng chú thích. Bạn không cần dọn dẹp gì trước.
- Đọc ba bộ đếm: cookie hợp lệ, dòng lỗi và dòng bị bỏ qua. Dòng bị bỏ qua là chú thích và dòng trống, điều này là bình thường.
- Nếu có dòng lỗi, hãy mở danh sách các dòng không đọc được. Mỗi mục hiển thị số dòng và lý do.
- Sao chép danh sách JSON khi số lượng hợp lệ khớp với số bạn mong đợi.
Nếu bạn không chắc mình được giao loại tệp nào, hãy dán vài dòng vào công cụ nhận dạng định dạng trước. Tệp giao hàng với các dòng tài khoản phân tách bằng dấu hai chấm khác với tệp cookie phân tách bằng tab, và hướng dẫn của chúng tôi về kiểm tra cấu trúc tệp đã giao trước khi dùng công cụ định dạng giải thích cách phân biệt chúng.
Nhập JSON vào trình quản lý cookie và xác minh phiên
Khi đã có JSON, hãy nhập nó vào tiện ích quản lý cookie trong một hồ sơ trình duyệt bạn dùng riêng cho việc này.
- Mở x.com trong hồ sơ đó trước, để tiện ích có trang và tên miền để gắn cookie vào.
- Mở tùy chọn nhập của tiện ích rồi dán mảng JSON.
- Tải lại trang và xem bạn có thấy dòng thời gian trang chủ đã đăng nhập thay vì màn hình đăng nhập hay không.
Với đăng nhập X, các cookie quan trọng nhất là auth_token, mang phiên đăng nhập, và ct0, mã thông báo đi kèm mà trang dùng cho các yêu cầu. Hãy kiểm tra tên miền là .x.com (hoặc .twitter.com cũ nếu bản xuất của bạn dùng tên đó), đường dẫn là dấu gạch chéo và thời điểm hết hạn là một ngày trong tương lai. Dấu thời gian đã hết hạn là lý do phổ biến nhất khiến một lần nhập vốn hoàn hảo bị thất bại. Nếu muốn xem toàn cảnh về đăng nhập bằng token, hãy đọc cách đăng nhập Twitter bằng auth token.
Lỗi chuyển đổi thường gặp: tab, dòng #HttpOnly_ và chú thích
Phần lớn thất bại đến từ một số ít lỗi, và danh sách lỗi của công cụ chuyển đổi chỉ thẳng vào chúng.
- Tab bị đổi thành dấu cách: khi sao chép từ cửa sổ chat, trình soạn thảo văn bản hoặc một số trang web, ký tự tab có thể bị thay bằng dấu cách. Khi đó công cụ chỉ thấy một trường dài thay vì bảy. Hãy sao chép từ tệp gốc trong trình soạn thảo văn bản thuần.
- Sai số trường: mỗi dòng phải có sáu hoặc bảy trường. Dòng có thêm dấu cách trong giá trị hoặc thiếu một cột sẽ được báo kèm số dòng.
- Tên miền hoặc tên để trống: dòng có tên miền hoặc tên cookie trống không dùng được, nên công cụ liệt kê nó chứ không đoán.
- Thời điểm hết hạn không phải số: trường thứ năm phải là chữ số. Ngày viết dưới dạng văn bản hoặc một ký tự thừa sẽ bị từ chối.
- Nhầm lẫn về chú thích: các dòng bắt đầu bằng dấu thăng bị bỏ qua, nhưng dòng #HttpOnly_ là cookie thật. Nếu số lượng thấp hơn mong đợi, hãy kiểm tra xem chúng có bị xóa ở một bước dọn dẹp trước đó không.
Sau khi sửa nguồn, hãy dán lại và so sánh số lượng hợp lệ với số cookie bạn mong đợi. Một công cụ chuyển đổi báo cáo mọi dòng không đọc được tốt hơn công cụ lặng lẽ bỏ chúng đi.
Chuyển tiếp sang Base64 khi công cụ yêu cầu
Một số bảng điều khiển và biểu mẫu nhập muốn mảng cookie ở dạng một chuỗi Base64 duy nhất thay vì JSON dễ đọc. Hãy dán JSON vào công cụ JSON sang Base64 và chọn đầu ra gọn trên một dòng, trừ khi nơi nhận yêu cầu thụt lề. Để kiểm tra hoặc gỡ lỗi một chuỗi Base64 có sẵn, chiều ngược lại được trình bày trong giải mã dữ liệu cookie Base64 về lại JSON.
Hãy giữ tệp cookies.txt gốc làm nguồn chuẩn, vì bạn luôn có thể tạo lại bản JSON và Base64 từ đó. Khi sẵn sàng thêm tài khoản vào quy trình làm việc, hãy xem danh mục tài khoản lâu năm, rồi dùng các công cụ miễn phí ở trên để chuẩn bị đúng định dạng mà công cụ của bạn cần.
Câu hỏi thường gặp
Định dạng cookie Netscape và JSON khác nhau thế nào?
Tệp Netscape là văn bản thuần với bảy cột phân tách bằng tab trên mỗi dòng. JSON là một mảng có cấu trúc, trong đó mỗi cookie là một đối tượng với các khóa có tên. Cả hai chứa cùng thông tin, nên chuyển đổi chỉ thay đổi bố cục chứ không đổi dữ liệu cookie.
Vì sao cookies.txt tôi dán vào hiện số cookie bằng không?
Thường là do tab bị thay bằng dấu cách khi sao chép, nên mọi dòng đều sai số trường. Hãy sao chép trực tiếp từ tệp gốc trong trình soạn thảo văn bản thuần rồi dán lại. Tệp chỉ chứa chú thích hoặc dòng trống cũng cho ra không cookie.
Dòng bắt đầu bằng #HttpOnly_ là chú thích hay cookie thật?
Đó là cookie thật. Tiền tố chỉ đánh dấu nó là HTTP-only, và tên miền bắt đầu ngay sau đó. Những dòng thông thường bắt đầu bằng dấu thăng là chú thích và bị bỏ qua.
Trường cookie nào quan trọng nhất với đăng nhập X?
Tên và giá trị của auth_token và ct0 là quan trọng nhất, cùng với tên miền đúng như .x.com, đường dẫn là dấu gạch chéo và ngày hết hạn chưa qua. Khi những điều đó đã đúng, các trường như cờ tên miền phụ hiếm khi gây rắc rối.
Sau này tôi có thể chuyển JSON ngược lại Netscape hoặc Base64 không?
Base64 dùng được theo cả hai chiều với các công cụ JSON sang Base64 và Base64 sang JSON. Trang này không có công cụ chuyển JSON sang Netscape, nên hãy giữ cookies.txt gốc nếu bạn có thể cần định dạng đó lần nữa.

