unten ist das Server-Programm (C) unter Verwendung von Socket-Funktionalität von libC
bereitgestelltIst NodeJS eine Socket-Bibliothek für Netzwerke?
# include <unistd.h>
# include <sys/socket.h>
# include <sys/types.h>
# include <string.h>
#include <netinet/in.h>
main(){
int listfd,connfd,retval;
//pid_t childpid;
socklen_t clilen;
struct sockaddr_in cliaddr, servaddr;
listfd = socket(AF_INET, SOCK_STREAM, 0);
printf("listfd = %d ", listfd);
if (listfd < 0){
perror("sock:");
exit(1);
}
bzero(&servaddr, sizeof(servaddr));
servaddr.sin_family = AF_INET;
servaddr.sin_addr.s_addr = htonl(INADDR_ANY);
servaddr.sin_port = htons(8004);
retval = bind(listfd, (struct sockaddr *) &servaddr, sizeof(servaddr));
if(retval < 0){
perror("bind:");
exit(2);
}
listen(listfd, 5);
while(1){
clilen = sizeof(cliaddr);
connfd = accept(listfd, (struct sockaddr *) &cliaddr, &clilen);
printf(" connfd= %d",connfd);
printf(" client connected \n");
printf(" client's port no = %d\n",htons(cliaddr.sin_port));
}
}
Ist Knoten JS eine ähnliche Socket-Bibliothek, die JS Benutzer hilft Steckdosen zu kommunizieren?
Hinweis: Ich würde sagen, node
ist ein Framework, aber nicht Bibliothek, weil JS-Code von node
im Gegensatz zu oben C-Programm verbraucht Aufruf Funktionen Socket-Bibliothek
Also kümmert sich v8 um Syntaxfehler im Code. Ist das korrekt? NodeJS nur Bibliotheken für die Vernetzung/etc .. Das ist, was ich verstehe, wenn Sie sagen, JS Laufzeit – overexchange
@overexchange - Ich weiß nicht, was Sie mit "kümmert sich um Syntaxfehler", aber V8 ist die Engine, die analysiert und führt Javascript-Code in node.js aus, so dass es der Teil von node.js ist, der zuerst auf Syntaxfehler stoßen wird, wenn sie vorhanden sind. – jfriend00
Ja, ich meine, v8 kümmert sich um das Parsen und Ausführen von JS-Code. Bietet nodeJS im Kern mehrere JS Libraries für Netzwerk/Krypto/etc ....? – overexchange