Tôi muốn Lặp lại đầu ra của tìm nạp xml bên trong javascript, Cách tiếp cận mà tôi đang sử dụng không hiệu quả, có bất kỳ giải pháp thay thế nào không? cho (để mục trong '{{getItemsData. kết quả. thực thể}}') { bảng điều khiển. nhật ký (mục. abc_name); Người ta nói rằng “Sự cần thiết là mẹ của mọi phát minh” và đó là điều đã thúc đẩy sự phát triển của Fetch API. Nhưng trước khi tìm hiểu sâu hơn về Fetch API, hãy đi sâu vào lịch sử đằng sau nó. Tôi biết tôi biết những gì đang diễn ra trong tâm trí bạn nhưng tôi sẽ nói ngắn gọn AJAXTrước khi khái niệm AJAX (JavaScript và XML không đồng bộ) được giới thiệu, để cập nhật một phần của trang, các trình duyệt tại thời điểm đó thường đưa ra yêu cầu về toàn bộ trang web tới máy chủ, sau khi máy chủ nhận được yêu cầu, nó được sử dụng để . Điều đó có nghĩa là ngay cả đối với một thay đổi nhỏ, trang đã được tải hoàn toàn. Đó là xấu phải không? Sau khi AJAX bước vào thế giới internet, nó đã thay đổi cách cập nhật trang truyền thống. Với AJAX , các ứng dụng Web có thể gửi và truy xuất dữ liệu từ máy chủ một cách không đồng bộ (trong nền) mà không can thiệp vào hiển thị và hành vi của trang hiện có XMLHttpRequestVào năm 2006, World Wide Web Consortium đã xuất bản một đặc tả Working Draft cho đối tượng XMLHttpRequest . Đối tượng XMLHttpRequest được sử dụng để truy xuất dữ liệu từ máy chủ không đồng bộ. Chờ một chút, ngươi vừa mới nói cái gì, ngươi nghe rõ ràng. Trong giai đoạn đầu, XMLHttpRequest được sử dụng để lấy dữ liệu XML trên HTTP do đó có tên. Nhưng ngày nay, nó có thể được sử dụng với các giao thức khác ngoài HTTP và nó có thể lấy dữ liệu không chỉ ở dạng XML mà còn cả AJAX 0, AJAX 1 hoặc văn bản thuần túy Khái niệm ban đầu đằng sau đối tượng AJAX 2 ban đầu được tạo bởi các nhà phát triển Outlook Web Access (của Microsoft)
Vì vậy, hãy thử với một ví dụ, chúng tôi sẽ thực hiện một yêu cầu đơn giản bằng cách sử dụng XMLHttpRequest , nhận phản hồi và phân tích nó thành AJAX 4 Chúng tôi cần hai người nghe được thiết lập để xử lý các trường hợp thành công và lỗi và một cuộc gọi tới AJAX 5 và AJAX 6. Phản hồi từ máy chủ được lưu trữ trong biến AJAX 7, được chuyển đổi thành đối tượng JavaScript bằng cách sử dụng AJAX 8 Chúng tôi đã sử dụng XMLHttpRequest trong vài năm để yêu cầu dữ liệu khác với AJAX 0 và đó là nơi bắt đầu có sự nhầm lẫn khi người mới bắt đầu cố gắng tìm hiểu cách tạo yêu cầu không đồng bộ trong JavaScript Không có API đơn giản và gọn gàng hơn để thực hiện yêu cầu không đồng bộ sao? . Vì vậy, hãy quay trở lại hiện tại Tìm vềTìm nạp là một API JavaScript gốc mới, được hỗ trợ bởi hầu hết các trình duyệt hiện nay. Tìm nạp cho phép bạn thực hiện các yêu cầu mạng tương tự như XMLHttpRequest . Theo Tìm nạp tài liệu dành cho nhà phát triển của Google giúp dễ dàng thực hiện các yêu cầu không đồng bộ và xử lý các phản hồi tốt hơn so với XMLHttpRequest cũ hơn. Đó là một cải tiến so với API XMLHttpRequest . Sự khác biệt chính giữa Tìm nạp và XMLHttpRequest là API Tìm nạp sử dụng Lời hứa, do đó tránh được địa ngục gọi lại Nếu bạn chưa quen với lời hứa thì hãy xem Lời hứa JavaScript. một lời giới thiệu. Bạn có thể sử dụng polyfill cho
Tìm nạp giao diệnFetch API có các giao diện sau AJAX 5. Phương pháp AJAX 6 được sử dụng để tìm nạp tài nguyênAJAX 7. Đại diện cho các tiêu đề phản hồi/yêu cầu, cho phép bạn truy vấn chúng và thực hiện các hành động khác nhau tùy thuộc vào kết quảAJAX 8. Đại diện cho một yêu cầu tài nguyênAJAX 9. Đại diện cho câu trả lời cho một yêu cầu
Thực hiện một yêu cầu bằng cách sử dụng tìm nạp ()Hàm XMLHttpRequest 0 có sẵn trong đối tượng XMLHttpRequest 1 toàn cầu. Hàm XMLHttpRequest 2 nhận một đối số bắt buộc, đường dẫn đến tài nguyên mà bạn muốn tìm nạp. Nó trả về một XMLHttpRequest 3, cho dù nó có thành công hay không. Nếu yêu cầu thành công hàm XMLHttpRequest 4 sẽ nhận đối tượng XMLHttpRequest 5, nếu yêu cầu không thành công thì hàm XMLHttpRequest 6 sẽ nhận đối tượng XMLHttpRequest 7 Đối tượng phản hồiĐoạn mã trên sử dụng API tìm nạp và thực hiện cuộc gọi tới GitHub để tìm nạp dữ liệu về người dùng. Khi lời hứa được giải quyết, chúng tôi nhận được một đối tượng XMLHttpRequest 5. Nhưng chờ đã, nếu bạn thử đăng nhập đối tượng XMLHttpRequest 9 trên bảng điều khiển, bạn sẽ thấy rằng đối tượng đó không có dữ liệu mà chúng tôi muốn. Đó là bởi vì đối tượng XMLHttpRequest 9 có thông tin về chính phản hồi đó. Để thực sự lấy dữ liệu, chúng ta cần lấy phần thân của phản hồi đối tượng phản hồiVì API Github mà chúng tôi đang sử dụng sẽ trả về AJAX 0 cho chúng tôi, nên phản hồi được trả về sẽ có phương thức XMLHttpRequest 2. Chúng ta chỉ cần gọi XMLHttpRequest 2 trên biến phản hồi. Phương thức XMLHttpRequest 2 trên một đối tượng XMLHttpRequest 5 trả về một XMLHttpRequest 3, vì vậy chúng ta cần xâu chuỗi trên một đối tượng XMLHttpRequest 7 khác Đã trích xuất đối tượng JSON từ phần thân Phản hồiĐối tượng tiêu đềGiao diện XMLHttpRequest 8 cho phép bạn tạo đối tượng tiêu đề của riêng mình thông qua hàm tạo XMLHttpRequest 9. Một đối tượng tiêu đề là một tập hợp các cặp tên-giá trị Cung cấp các tùy chọn để tìm nạp()Phương thức AJAX 6 chấp nhận một tham số thứ hai tùy chọn, một đối tượng XMLHttpRequest 1 cho phép bạn tùy chỉnh yêu cầu đối tượng yêu cầuĐối tượng XMLHttpRequest 2 đại diện cho một yêu cầu tài nguyên. Thay vì chuyển một XMLHttpRequest 3 tài nguyên vào lệnh gọi AJAX 6, bạn có thể tạo một đối tượng yêu cầu bằng cách sử dụng hàm tạo XMLHttpRequest 5 và chuyển đối tượng đó làm đối số cho XMLHttpRequest 6 Bằng cách chuyển đối tượng Yêu cầu tới AJAX 6, bạn có thể thực hiện các yêu cầu tùy chỉnh Phần kết luận Chắc chắn, XMLHttpRequest không được tạo ra cho những thứ chúng ta đang sử dụng ngày nay. Ngoài ra, API của nó hơi lộn xộn. API XMLHttpRequest 9 giúp thực hiện các yêu cầu không đồng bộ dễ dàng hơn và xử lý các phản hồi tốt hơn so với việc sử dụng một XMLHttpRequest . XMLHttpRequest 9 cho phép chúng tôi tạo API tốt hơn cho những thứ đơn giản, sử dụng các tính năng JavaScript hiện đại như XML 2
Làm cách nào để tìm nạp dữ liệu từ tệp XML trong JavaScript?
Sử dụng JavaScript . var strXML = ' .. . tài liệu var; nếu (cửa sổ. ActiveXObject) doc = ActiveXObject mới('Microsoft. XMLDOM'); tài liệu. không đồng bộ = 'sai'; tài liệu. tảiXML(strXML);
Chúng tôi có thể sử dụng XML tìm nạp trong JavaScript không?
Bạn có thể sử dụng công cụ ưa thích của mình để tạo FetchXML . Bây giờ mã. Chúng tôi sẽ đặt FetchXML bên trong dấu tích phía sau để tạo chuỗi nhiều dòng trong JavaScript. Sau đó, chúng tôi sẽ mã hóa FetchXML và gửi nó tới Xrm.
Làm cách nào để tìm nạp dữ liệu từ XML?
Trang sử dụng đối tượng XMLHttpRequest (JavaScript) để tìm nạp tệp XML (mẫu. xml) sau đó phân tích cú pháp bằng JavaScript và tạo biểu đồ . Hàm phân tích cú pháp phản hồi XML và sau đó sử dụng dữ liệu để tạo biểu đồ được hiển thị bên dưới và được gọi là myXMLProcessor (đó là hàm gọi lại XMLHttpRequest).
Tìm nạp có hoạt động với XML không?
Nhưng ngày nay, nó có thể được sử dụng với các giao thức khác ngoài HTTP và nó có thể tìm nạp dữ liệu không chỉ ở dạng XML mà còn cả JSON , HTML hoặc văn bản thuần túy. The original concept behind the XMLHttpRequest object was originally created by the developers of Outlook Web Access (by Microsoft). |