Tôi đang cố gắng kéo văn bản ra khỏi bài viết Wikipedia bằng API của họ (API là một thuật ngữ hào phóng cho những gì họ đang cung cấp, nhưng chúng tôi sẽ sử dụng nó), và tôi chạy vào các vấn đề liên quan đến phân tích cú pháp của đối tượng JSON tiếp theo mà tôi đang quay lại. Cụ thể, đối tượng chứa văn bản Tôi đang tìm kiếm dưới một phím có nhãn là '*' như vậy mà, sau khi chạy lệnh:Wikipedia API - Truy cập JSON Object
$.getJSON("http://en.wikipedia.org/w/api.php?action=parse&format=json&callback=?", {page:"Red Sea clownfish", prop:"text"}, function(data) {
Sau đó tôi cố gắng để phân tích thông tin này vào một chuỗi bằng cách sử dụng lệnh:
var dat = data.parse.text.*;
nào tôi sau đó xuất ra một giao diện điều khiển sử dụng:
console.log(dat);
Thật không may, không phải Google Chrome hay Firefox dường như để có thể phân tích '*'
khóa. Khi tôi đổ toàn bộ đối tượng 'dữ liệu' vào bảng điều khiển, tôi có thể thấy rằng các phím (lồng nhau) cho cấu trúc dữ liệu là 'phân tích cú pháp', 'văn bản' và '*'
. Tôi thậm chí có thể đổ các văn bản tôi cần lên đến phím '*'. I E.
var dat = data.parse.text;
hoạt động. Nó chỉ là nhân vật '*' không muốn được công nhận.
Bất kỳ ý tưởng nào về cách sửa lỗi này? Lý tưởng nhất là tôi muốn có quyền truy cập vào giá trị mà khóa '*' đang tham chiếu. Tôi chỉ không có ý tưởng làm thế nào để lập trình nó trong javascript.
Chỉ cần tò mò, 'callback =? 'Là gì? (Dường như nó hoạt động giống như một cuộc gọi lại trống rỗng, có lẽ vì MediaWiki đang loại bỏ ký tự không hợp lệ.) –
Vâng! Wikipedia/MediaWiki chắc chắn có API khủng khiếp nhất trên thế giới. – Jaseem