Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.javascript > #124300
| From | Mild Shock <janburse@fastmail.fm> |
|---|---|
| Newsgroups | comp.lang.javascript |
| Subject | Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] |
| Date | 2024-03-13 14:00 +0100 |
| Message-ID | <uss81o$1a6hb$1@solani.org> (permalink) |
| References | <usquog$19ifk$1@solani.org> <1clu637150wl5.locsf12fk0z0.dlg@40tude.net> <uss6s7$1a5rg$1@solani.org> |
The internet is full of fetch examples, where
some JSON is fetched and then converted into DOM.
Thats the alternative world, alternative to
the world, where one would directly fetch XML,
and add it to the DOM. The JSON might also come
from a web socket. It implements a kind of
Model–view–controller
https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
At least if one indentifies the JSON with the model
and the XML with the view. There are also many
frameworks like angularJS that support such MVC.
But then there is svelte, which is more DOM based
again. Pros and cons of fetch versus XHR is wide
field. My choice of fetch isn't based on any of
such comparison. All that counts for my choice is
"no 3rd party dependence". But you can also
more directly fetch XML with fetch(), like here:
async function display(){
const xmlFetch = await fetch("./yourXMLorXSL.xml")
const xmlText = await xmlFetch.text()
const xml = (new DOMParser()).parseFromString(xmlText, "text/xml")
console.log(xml)
}
Which would be a replacement of XMLHttpRequest: responseXML,
expressed in "direct style" programming with
async/await. Not the promise/thenable hell with .then().
But DOMParser isn't natively available on node.JS right?
You would need a third party in node.JS?
Mild Shock schrieb:
> I made a DOM example with fetch. You need to
> lookup webstreams. Node.JS braught both
> webstreams AND fetch. I posted this example,
>
> maybe it was in another thread. But here it is again.
> You get the most bang out of fetch, when you use
> it with webstreams. Here is a little example:
>
> await response.body
> .pipeThrough(new TextDecoderStream())
> .pipeTo(targetDiv.writable)
>
> See also here:
>
> Streaming element with backpressure demo
> https://streams.spec.whatwg.org/demos/streaming-element-backpressure.html
>
> Here is the node.JS announcement again, it
> brings webstreams AND fetch, 2 modules
> (in words **TWO** modules):
>
> > Notable Changes - Oct 17, 2023
> > The recent update to Node.js, version 21, includes
> > an important change to the fetch module as well as
> > WebStreams . Both modules were marked as stable
> > after a recent update.
> https://nodejs.org/en/blog/announcements/v21-release-announce
>
> But I don't know the exact feature matrice,
> between fetch and XHR. Maybe googling you find
> somebody who made such a feature matrice, comparing
>
> the two with respect to functional and non-functional
> requirements implemented.
>
> JJ schrieb:
>> On Wed, 13 Mar 2024 02:16:01 +0100, Mild Shock wrote:
>>> Important information for Lawrence D'Oliveiro.
>>> Basically you need to depend on a 3rd party that
>>> did implememt the xmlhttprequest node module.
>>>
>>> Namely this here:
>>> https://www.npmjs.com/package/xmlhttprequest
>>>
>>> You also need to install it besides the node.js
>>> installation itself. You need to install the
>>> node module package xmlhttprequest.
>>>
>>> With fetch() you only need to install node.js,
>>> and nothing else. Because since release 21,
>>> fetch() is already part of native Node.js.
>>>
>>> I wrote this already, but I can repeat it of
>>> course again and again and again for you:
>>>
>>> > Notable Changes - Oct 17, 2023
>>> > The recent update to Node.js, version 21, includes
>>> > an important change to the fetch module as well as
>>> > WebStreams . Both modules were marked as stable
>>> > after a recent update.
>>> https://nodejs.org/en/blog/announcements/v21-release-announce
>>>
>>> Please feel free to ask more questions if
>>> your skull can not digest the information of
>>> a difference between these two concepts:
>>> - 3rd party API
>>> - native API
>>>
>>> Best is if you open a separate thread to
>>> cleanup your confusion. Or see a psychatrist.
>>>
>>> Mild Shock schrieb:
>>> > Natively Node.js does not provide the browser XHR API.
>>> > There is, however, a node module xmlhttprequest that does.
>>> >
>>> > Lawrence D'Oliveiro schrieb:
>>> >> On Tue, 12 Mar 2024 00:19:57 +0100, Mild Shock wrote:
>>> >>
>>> >>> The same code runs on nodeJS.
>>> >>> No need to install some XHR library.
>>> >>
>>> >> You don’t know how to use XMLHttpRequest directly?
>>> >>
>>> >
>>
>> Isn't that a matter of API specifications? Where Fetch is part of
>> ECMAScript
>> specification, and XMLHttpRequest is part of DOM specification.
>>
>> Node.js is only an implementation of ECMAScript. It doesn't have any for
>> DOM. i.e. no XMLHttpRequest, by default.
>>
>
Back to comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar
Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 02:16 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 02:35 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 12:57 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 13:01 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] John Harris <niam@jghnorth.org.uk.invalid> - 2024-03-13 14:57 +0000
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 17:02 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] John Harris <niam@jghnorth.org.uk.invalid> - 2024-03-14 18:58 +0000
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-15 10:00 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] John Harris <niam@jghnorth.org.uk.invalid> - 2024-03-15 14:06 +0000
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-15 16:05 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] John Harris <niam@jghnorth.org.uk.invalid> - 2024-03-16 15:11 +0000
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-16 18:11 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-16 18:18 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-16 18:30 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-16 19:01 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-16 19:05 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-16 19:08 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] John Harris <niam@jghnorth.org.uk.invalid> - 2024-03-18 14:35 +0000
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-18 18:49 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] John Harris <niam@jghnorth.org.uk.invalid> - 2024-03-19 10:50 +0000
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-19 14:27 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 17:04 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 17:13 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-29 00:28 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-29 00:32 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-29 00:42 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-29 00:46 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-29 00:47 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] JJ <jj4public@outlook.com> - 2024-03-13 19:24 +0700
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 13:40 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 14:00 +0100
Re: Difference between 3rd party and native [Confusion by Lawrence D'Oliveiro] Mild Shock <janburse@fastmail.fm> - 2024-03-13 14:06 +0100
csiph-web