<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[HTTP Socket Seitenquelltext C++]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich bin auf der Suche nach eine Möglichkeit den Seitenquelltext einer Website in eine char-Variable zu schreiben um diesen String dann weiter verarbeiten zu können.</p>
<p>Mit meinem Script bin ich nun soweit, dass es ich per Socket eine Anfrage an meinen Webserver schicken kann.</p>
<p>Hier ein kurzer Auszug:</p>
<pre><code class="language-cpp">st_Sockaddr.sin_addr.s_addr = inet_addr(&quot;208.77.188.166&quot;);
success = connect(skt_Smtp,(struct sockaddr *) &amp;st_Sockaddr,sizeof(st_Sockaddr));
strcpy(send_Buf,&quot;GET /index.html HTTP/1.1\r\nHost: www.example.org\r\n\r\n&quot;);
s_len = send(skt_Smtp,send_Buf,strlen(send_Buf),0);
</code></pre>
<p>Ich habe nun das Problem, dass ich den Quellcode in eine Variable übertragen muss.<br />
Zurzeit funktioniert es soweit, dass ich mir die Rückgabe in einen Puffer schreibe und diesen nach und nach ausgeben kann.</p>
<pre><code class="language-cpp">do
{
	i = recv(skt_Smtp, recv_Buf, MAX_LENGTH, 0);
	if(i &lt; 0)
	{
		printf(&quot;recv() returned %d, errno=%d\n&quot;, i, errno);
		break;
	}
	if(i &gt; MAX_LENGTH)
	{
		i = MAX_LENGTH;
	}

	printf(&quot;%-*.*s&quot;, i, i, recv_Buf);
}
while(i != 0);
</code></pre>
<p>Ich brauche das Ergebnis aber alles in einem String.<br />
Ist bestimmt ganz einfach, blos ich bin zu dumm <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    />.</p>
<p>Im Forum habe ich zum Thema Sockets schon gelesen, aber nicht auf die Lösung gekommen.<br />
Das Thema curl würde ich gern vermeiden, da ich mich eh in Sockets einarbeiten möchte und dieses Script eine schöne Übung ist.</p>
<p>Ich Programmiere beruflich schon ein paar Jahre PHP und hätte nicht erwartet, dass ich jetzt so auf dem Schlauch stehe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    />.</p>
<p>Wenn noch mehr Quellcodeauszüge benötigt werden, dann bitte einfach schreiben.<br />
Das ganze soll/läuft unter Linux.</p>
<p>Ich bedanke mich schonmal für eure Hilfe!</p>
<p>Grüße Jake</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/246561/http-socket-seitenquelltext-c</link><generator>RSS for Node</generator><lastBuildDate>Fri, 18 Sep 2026 00:24:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/246561.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 29 Jul 2009 20:09:44 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to HTTP Socket Seitenquelltext C++ on Wed, 29 Jul 2009 20:09:53 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich bin auf der Suche nach eine Möglichkeit den Seitenquelltext einer Website in eine char-Variable zu schreiben um diesen String dann weiter verarbeiten zu können.</p>
<p>Mit meinem Script bin ich nun soweit, dass es ich per Socket eine Anfrage an meinen Webserver schicken kann.</p>
<p>Hier ein kurzer Auszug:</p>
<pre><code class="language-cpp">st_Sockaddr.sin_addr.s_addr = inet_addr(&quot;208.77.188.166&quot;);
success = connect(skt_Smtp,(struct sockaddr *) &amp;st_Sockaddr,sizeof(st_Sockaddr));
strcpy(send_Buf,&quot;GET /index.html HTTP/1.1\r\nHost: www.example.org\r\n\r\n&quot;);
s_len = send(skt_Smtp,send_Buf,strlen(send_Buf),0);
</code></pre>
<p>Ich habe nun das Problem, dass ich den Quellcode in eine Variable übertragen muss.<br />
Zurzeit funktioniert es soweit, dass ich mir die Rückgabe in einen Puffer schreibe und diesen nach und nach ausgeben kann.</p>
<pre><code class="language-cpp">do
{
	i = recv(skt_Smtp, recv_Buf, MAX_LENGTH, 0);
	if(i &lt; 0)
	{
		printf(&quot;recv() returned %d, errno=%d\n&quot;, i, errno);
		break;
	}
	if(i &gt; MAX_LENGTH)
	{
		i = MAX_LENGTH;
	}

	printf(&quot;%-*.*s&quot;, i, i, recv_Buf);
}
while(i != 0);
</code></pre>
<p>Ich brauche das Ergebnis aber alles in einem String.<br />
Ist bestimmt ganz einfach, blos ich bin zu dumm <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    />.</p>
<p>Im Forum habe ich zum Thema Sockets schon gelesen, aber nicht auf die Lösung gekommen.<br />
Das Thema curl würde ich gern vermeiden, da ich mich eh in Sockets einarbeiten möchte und dieses Script eine schöne Übung ist.</p>
<p>Ich Programmiere beruflich schon ein paar Jahre PHP und hätte nicht erwartet, dass ich jetzt so auf dem Schlauch stehe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    />.</p>
<p>Wenn noch mehr Quellcodeauszüge benötigt werden, dann bitte einfach schreiben.<br />
Das ganze soll/läuft unter Linux.</p>
<p>Ich bedanke mich schonmal für eure Hilfe!</p>
<p>Grüße Jake</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1751908</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1751908</guid><dc:creator><![CDATA[jake]]></dc:creator><pubDate>Wed, 29 Jul 2009 20:09:53 GMT</pubDate></item><item><title><![CDATA[Reply to HTTP Socket Seitenquelltext C++ on Wed, 29 Jul 2009 20:13:04 GMT]]></title><description><![CDATA[<p>jake schrieb:</p>
<blockquote>
<p>Hallo Leute,</p>
<p>ich bin auf der Suche nach eine Möglichkeit den Seitenquelltext einer Website in eine char-Variable zu schreiben um diesen String dann weiter verarbeiten zu können.</p>
<p>Mit meinem Script bin ich nun soweit, dass es ich per Socket eine Anfrage an meinen Webserver schicken kann.</p>
<p>Hier ein kurzer Auszug:</p>
<pre><code class="language-cpp">st_Sockaddr.sin_addr.s_addr = inet_addr(&quot;208.77.188.166&quot;);
success = connect(skt_Smtp,(struct sockaddr *) &amp;st_Sockaddr,sizeof(st_Sockaddr));
strcpy(send_Buf,&quot;GET /index.html HTTP/1.1\r\nHost: www.example.org\r\n\r\n&quot;);
s_len = send(skt_Smtp,send_Buf,strlen(send_Buf),0);
</code></pre>
<p>Ich habe nun das Problem, dass ich den Quellcode in eine Variable übertragen muss.<br />
Zurzeit funktioniert es soweit, dass ich mir die Rückgabe in einen Puffer schreibe und diesen nach und nach ausgeben kann.</p>
<pre><code class="language-cpp">do
{
	i = recv(skt_Smtp, recv_Buf, MAX_LENGTH, 0);
	if(i &lt; 0)
	{
		printf(&quot;recv() returned %d, errno=%d\n&quot;, i, errno);
		break;
	}
	if(i &gt; MAX_LENGTH)
	{
		i = MAX_LENGTH;
	}
	
	printf(&quot;%-*.*s&quot;, i, i, recv_Buf);
}
while(i != 0);
</code></pre>
<p>Ich brauche das Ergebnis aber alles in einem String.<br />
Ist bestimmt ganz einfach, blos ich bin zu dumm <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    />.</p>
<p>Im Forum habe ich zum Thema Sockets schon gelesen, aber nicht auf die Lösung gekommen.<br />
Das Thema curl würde ich gern vermeiden, da ich mich eh in Sockets einarbeiten möchte und dieses Script eine schöne Übung ist.</p>
<p>Ich Programmiere beruflich schon ein paar Jahre PHP und hätte nicht erwartet, dass ich jetzt so auf dem Schlauch stehe <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    />.</p>
<p>Wenn noch mehr Quellcodeauszüge benötigt werden, dann bitte einfach schreiben.<br />
Das ganze soll/läuft unter Linux.</p>
<p>Ich bedanke mich schonmal für eure Hilfe!</p>
<p>Grüße Jake</p>
</blockquote>
<p>Nimm einen std::string und füge dann immer hinten an. Zum Runterladen der Seite könntest du auch libcurl nutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1751910</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1751910</guid><dc:creator><![CDATA[BBBB]]></dc:creator><pubDate>Wed, 29 Jul 2009 20:13:04 GMT</pubDate></item><item><title><![CDATA[Reply to HTTP Socket Seitenquelltext C++ on Wed, 29 Jul 2009 20:35:13 GMT]]></title><description><![CDATA[<p>Hi BBBB,</p>
<p>danke für deine schnelle Antwort.<br />
Auf curl wollte ich erstmal mit absicht verzeichten, aber trotzdem danke.</p>
<p>Ich habe mir nun einen std::string definiert, aber jetzt fehlen wir wohl die richtigen Befehle <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>Die aktuelle Ausgabe der Puffer-Position habe ich mit folgenden Code gemacht:</p>
<pre><code class="language-cpp">printf(&quot;%-*.*s&quot;, i, i, recv_Buf);
</code></pre>
<p>Aber mit welchem Befehl bekomme ich das ganze in den string?</p>
<p>Danke schonmal,</p>
<p>Jake</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1751923</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1751923</guid><dc:creator><![CDATA[jake]]></dc:creator><pubDate>Wed, 29 Jul 2009 20:35:13 GMT</pubDate></item><item><title><![CDATA[Reply to HTTP Socket Seitenquelltext C++ on Wed, 29 Jul 2009 22:37:52 GMT]]></title><description><![CDATA[<p>hi</p>
<pre><code class="language-cpp">std::string str;
do
{
    i = recv(skt_Smtp, recv_Buf, MAX_LENGTH, 0);
    if(i &lt; 0)
    {
        printf(&quot;recv() returned %d, errno=%d\n&quot;, i, errno);
        break;
    }
    if(i &gt; MAX_LENGTH)
    {
        i = MAX_LENGTH;
    }

    //printf(&quot;%-*.*s&quot;, i, i, recv_Buf);
    str += std::string(recv_Buf, i);
}
while(i != 0); 

// nun hast alles in str
</code></pre>
<p>meep meep</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1751983</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1751983</guid><dc:creator><![CDATA[Meep Meep]]></dc:creator><pubDate>Wed, 29 Jul 2009 22:37:52 GMT</pubDate></item></channel></rss>