Tôi đang sử dụng MediaWiki API để cập nhật một số trang bằng rô bốt thử nghiệm. Robot này sử dụng thư viện Java Apache HTTP-client để cập nhật các trang.API và mã hóa MediaWiki
(...)
PostMethod postMethod = new PostMethod("http://mymediawikiinstallation/w/api.php");
postMethod.addParameter("action","edit");
postMethod.addParameter("title",page.replace(' ', '_'));
postMethod.addParameter("summary","trying to fix this accent problem");
postMethod.addParameter("text",content);
postMethod.addParameter("basetimestamp",basetimestamp);
postMethod.addParameter("starttimestamp",starttimestamp);
postMethod.addParameter("token",token);
postMethod.addParameter("notminor","");
postMethod.addParameter("format","xml");
int status = httpClient.executeMethod(postMethod);
(...)
Tuy nhiên, chuỗi 'nội dung' chứa một số dấu trọng âm. System.out.prinln(content)
trông OK, nhưng các ký tự nổi bật trong wiki trông xấu. Ví dụ. 'Val rie' thay vì 'Valérie'.
Làm cách nào để khắc phục sự cố này?
Hi Roderic :-) Cảm ơn nhưng, tôi không nghĩ đây là vấn đề. Các phương thức 'addParameters' đã chuyển đổi dữ liệu khi nó gửi truy vấn POST. Có thể là giải pháp ở đây: http://tinyurl.com/lyxv8c. Tôi sẽ kiểm tra vào ngày mai. – Pierre