Mam strumień i muszę pobrać zawartość strumienia do łańcucha. Przesyłam strumień z Internetu za pomocą http.get. Piszę również strumień do pliku, ale nie chcę pisać pliku, a po tym otwierać ten sam plik i czytać z niego ... Więc muszę przekonwertować strumień na ciąg Dzięki za wszystkie porady ...Node.js - Jak uzyskać strumień do ciągu znaków
Odpowiedz
Zamiast drugiej funkcji zagnieżdżonych, spróbować metody toString() w strumieniu. Można go następnie wyprowadzić w dowolne miejsce, a także napisać metodę through(), która może przypisać ją do zmiennej lub użyć bezpośrednio w tej funkcji.
Ostatnia uwaga - metoda http.get() pobiera dwa parametry: adres URL i wywołanie zwrotne. Wymaga to dwóch parametrów i prawdopodobnie nic nie dostałeś, ponieważ był to pusty komunikat o błędzie.
Myślę, że to działa tylko dlatego, że http.get zwraca strumień rozszerzony, ogólnie Czytelne strumienie nie mieć metodę toString, która działa w ten sposób. –
Więc
I have this:
var centent = '';
var adress = "http://www.google.cz";
var request = http.get(adress.trim(), function(response) {
//I need to get content of http stream into variable content and after that continue
}
Myślałam, że to będzie działać, ale nie
var http = require('http');
var string = '';
var request = http.get("http://www.google.cz", function(response) {
response.on('data', function(response){
string += response;
});
response.on('end', function(string){
console.log(string);
});
});
Dodaj to na początku 'response.setEncoding ('utf8');' – user568109
To nie jest odpowiedź, należy ją dodać do pytania. – justrhysism
Niewielka korekta funkcji obsługi "końca" funkcji obsługi nie powinna zawierać żadnego parametru, w przeciwnym razie wydrukuje się niezdefiniowana. Tak więc, 'response.on ('end', function() { console.log (string); });' – mihaic
var http = require('http');
var string = '';
var request = http.get("http://www.google.cz", function(response) {
response.on('data', function(response){
string += response.toString();
});
response.on('end', function(string){
console.log(string);
});
});
To działa na pewno. Używam tego.
- 1. Node.js url.parse z powrotem do ciągu znaków
- 2. Jak uzyskać długość ciągu znaków
- 3. Jak uzyskać pierwszy element w ciągu znaków?
- 4. Strumień bajtów i strumień znaków
- 5. typeof: jak uzyskać typ z ciągu znaków
- 6. jak uzyskać liczbę "#" w ciągu znaków?
- 7. Załaduj moduł node.js z ciągu znaków do pamięci
- 8. Jak uzyskać dostęp do ciągu znaków w string.xml
- 9. Odczytywanie ze strumienia pamięci do ciągu znaków
- 10. Jak usunąć znaki kontrolne z ciągu znaków?
- 11. Linq do zwracania ciągu znaków
- 12. Jak uzyskać skrót MD5 z ciągu znaków w Golang?
- 13. Jak uzyskać pozycję dopasowania Regex w ciągu znaków?
- 14. Jak uzyskać określony format ciągu znaków (wzór) w java?
- 15. PHP/regex: Jak uzyskać wartość ciągu znaków HTML?
- 16. W PHP, jak uzyskać wartość zmiennoprzecinkową z mieszanego ciągu znaków?
- 17. Jak uzyskać pole tekstowe WPF w postaci ciągu znaków
- 18. Scala: Jak mogę uzyskać przekształconą reprezentację ciągu znaków?
- 19. Jak uzyskać wartości całkowite z ciągu znaków w Pythonie?
- 20. Jak mogę uzyskać zrzut heksadecymalny ciągu znaków w PHP?
- 21. Jak uzyskać wartość wyliczenia z ciągu znaków w języku C#?
- 22. Gałązka: Jak uzyskać pierwszy znak w ciągu znaków
- 23. node.js - strumień plik bez zapisywania go tymczasowo
- 24. Usuwanie znaków z ciągu znaków
- 25. node.js napisz odpowiedź http na strumień
- 26. Jak mogę dołączyć do listy w ciągu znaków (zastrzeżenia)?
- 27. Lua - zachowanie numeru do ciągu znaków
- 28. Samouczek algorytmu ECDSA do podpisania ciągu znaków
- 29. Vim - usuń do szukanego ciągu znaków
- 30. Jak uniknąć podwójnych cudzysłowów w ciągu znaków?
Twoje pytanie jest zbyt nieprecyzyjne. Więc chcesz przekonwertować przychodzące dane na ciąg lub zapisać go na dysku? Przykładowy kod może pomóc. –
możliwy duplikat [Pisanie strumienia node.js do zmiennej łańcuchowej] (http://stackoverflow.com/questions/10623798/writing-node-js-stream-int-a-tring-variable) –