Autor Beitrag
RalfB
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Mo 16.09.19 14:25 
Hallo, ich habe folgendes Problem:
Ich sende einen Webrequest und bekomme eine Antwort, die einen Teil html-Code enthält (als String).
Diesen Code muss ich jetzt in einer Seite öffnen.
Wie übergebe ich das an eine meiner Webseiten?

Bsp:
der zurückgegebene String enthält den html-Schnipsel:

ausblenden HTML-Dokument
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
<form id="downlXXX" name="downlXXX" method="post" action="httpsXXX63;parameters=Z0XXX3d"  >
<noscript>
<div>JavaScript ist derzeit deaktiviert oder wird von Ihrem Browser nicht unterstützt<br/>
Klicken Sie auf die Schaltfläche "Weiter", um ..<br/>
<input class="ncol" type="submit" value="Weiter" id="submit1" name="submit1" />
</div>
</noscript>
<div>
<input type="hidden" name="X1" value="XXXX" >
<input type="hidden" name="X2" value="CCCC" >

</form>
<SCRIPT LANGUAGE="Javascript" >
<!--
var popupWin;
var submitpopupWin = 0;

function LoadPopup() {
  
  
}
  self.document.forms.downlXXX.submit();
//-->

</SCRIPT>
RalfB Threadstarter
Hält's aus hier
Beiträge: 10



BeitragVerfasst: Mi 18.09.19 08:19 
Konnte es jetzt selbst lösen, falls jemand so was braucht:

Auf der Page:
ausblenden HTML-Dokument
1:
2:
3:
4:
5:
6:
7:
8:
9:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>Erfolg</title>
</head>
<body>
   <span id="MySpan" runat="server" />
</body>
</html>


im .cs der Page:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
protected void Page_Load(object sender, EventArgs e)
    {

        string income = Request.QueryString.ToString();
        string incomeenc = System.Text.Encoding.UTF8.GetString(System.Convert.FromBase64String(income));//must be converted caused on security
        MySpan.InnerHtml = incomeenc; // System.Text.Encoding.UTF8.GetString(System.Convert.FromBase64String(incomeenc));
    }


Der Aufruf:

ausblenden C#-Quelltext
1:
Response.Redirect("Default2.aspx?" + res.HTML_ANSWER);//res.HTML_ANSWER is a BASE64-decoded string					


in der web.config waren noch Einträge nötig wg. der Länge des übergebenen Strings:

ausblenden XML-Daten
1:
2:
3:
4:
<system.web>
    <authentication mode="None"/>
    <compilation debug="true" targetFramework="4.6.1"/>
    <httpRuntime targetFramework="4.6.1" maxQueryStringLength="65536" maxUrlLength="65536"/>


...

ausblenden XML-Daten
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
<system.webServer>
    <modules>
      <remove name="FormsAuthentication"/>
    </modules>
    <security>
      <requestFiltering>
        <requestLimits maxQueryString="65536"/>
      </requestFiltering>
    </security>
</system.webServer>