javascript - 骡子 ESB : Proceed HTTP Response with HTML and Javascript

标签 javascript html http mule httpresponse

目前我正在使用 mule esb。我想要实现的是:在JavaScript中进行一些操作,并基于HTML格式将响应发布到HTTP。

例如,我有以下 HTML 文件:

<!DOCTYPE> <html>   <head>
        <script type="text/javascript" src="mule-resource/js/mule.js"></script>
        <script type="text/javascript">

            function init(){
                mule.subscribe("http://localhost:8081/uebermittleAusweisdaten", function(data){
                    var res = JSON.parse(data.data);
                    var ausweis = res.Body.uebermittleAusweisdatenResponse.ausweis;
                    var berechtigung = res.Body.uebermittleAusweisdatenResponse.berechtigung;
                    var fahrerlaubnis = res.Body.uebermittleAusweisdatenResponse.fahrerlaubnis;
                    var lieferant = res.Body.uebermittleAusweisdatenResponse.lieferant;
                    var mitarbeiter = res.Body.uebermittleAusweisdatenResponse.mitarbeiter

                    var raumzonen = berechtigung.raumzonen.raumzone;
                    var zusatzberechtigungen = berechtigung.zusatzberechtigungen.zusatzberechtigung;
                    var mitnahmenachweise = berechtigung.mitnahmenachweise.mitnahmenachweis;

                    var fahrzeugtypen= fahrerlaubnis.fahrzeugtypen.fahrzeugtyp;
                    var klassen= fahrerlaubnis.klassen.klasse;

                    var auftraggeberliste = lieferant.auftraggeberListe.auftraggeber;

                    var name = mitarbeiter.name;

                    document.getElementById('messages').innerHTML = "<b> Ausweis </b><br\>";
                    document.getElementById('messages').innerHTML += "Nummer: "+ausweis.nummer+'<br\>';
                    document.getElementById('messages').innerHTML += "Gueltig bis: "+ausweis.gueltigBis+'<br\>';
                    document.getElementById('messages').innerHTML += "Farbe: "+ausweis.farbe+'<br\>';
                    document.getElementById('messages').innerHTML += "Gueltigkeit: "+ausweis.gueltigkeit+'<br\>';
                    document.getElementById('messages').innerHTML += "Bemerkung: "+ausweis.bemerkung+'<br\><br\>';

                    document.getElementById('messages').innerHTML += "<b> Mitarbeiter </b><br\>";
                    document.getElementById('messages').innerHTML += "Personalnummer: "+mitarbeiter.personalnummer+'<br\>';
                    if(name.titel!=undefined){
                        document.getElementById('messages').innerHTML += "Titel: "+name.titel+'<br\>';
                    }
                    document.getElementById('messages').innerHTML += "Vorname: "+name.vorname+'<br\>';
                    document.getElementById('messages').innerHTML += "Nachname: "+name.nachname+'<br\>';
                    document.getElementById('messages').innerHTML += "Funktionsbezeichnung: "+mitarbeiter.funktionsbezeichnung+'<br\>';
                    document.getElementById('messages').innerHTML += "Firma: "+mitarbeiter.firma+'<br\>';
                    document.getElementById('messages').innerHTML += "EU Freistellung: "+mitarbeiter.eUFreistellung+'<br\>';
                    document.getElementById('messages').innerHTML += "Bild: <img align='top' src = 'data:image/png;base64,"+mitarbeiter.bild+"'\><br\><br\>";

                    document.getElementById('messages').innerHTML += "<b> Berechtigung </b><br\>";
                    document.getElementById('messages').innerHTML += "Raumzonen: ";
                    for(i=0,j=raumzonen.length; i<j; i++){
                        document.getElementById('messages').innerHTML += raumzonen[i];
                        if(i == j-1){
                            document.getElementById('messages').innerHTML += "<br\>";
                        }
                        else{
                            document.getElementById('messages').innerHTML += ", ";
                        }
                    }
                    document.getElementById('messages').innerHTML += "Mitnahmenachweise: <br/>";
                    for(i=0,j=mitnahmenachweise.length; i<j; i++){
                        var space = "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
                        var gegenstaende = mitnahmenachweise[i].gegenstaende.gegenstand;

                        document.getElementById('messages').innerHTML += "&nbsp&nbsp&nbsp"+(i+1)+") Mitnahmenachweis:<br/>";
                        document.getElementById('messages').innerHTML += space+"Personengruppe: "+mitnahmenachweise[i].personengruppe+'<br\>';
                        document.getElementById('messages').innerHTML += space+"Gegenstaende: ";
                        for(x=0,y=gegenstaende.length; x<y; x++){
                            document.getElementById('messages').innerHTML += gegenstaende[x];
                            if(x == y-1){
                                document.getElementById('messages').innerHTML += "<br\>";
                            }
                            else{
                                document.getElementById('messages').innerHTML += ", ";
                            }
                        }
                    }
                    document.getElementById('messages').innerHTML += "Zusatzberechtigungen: ";
                    for(i=0,j=zusatzberechtigungen.length; i<j; i++){
                        document.getElementById('messages').innerHTML += zusatzberechtigungen[i];
                        if(i == j-1){
                            document.getElementById('messages').innerHTML += "<br\>";
                        }
                        else{
                            document.getElementById('messages').innerHTML += ", ";
                        }
                    }
                    document.getElementById('messages').innerHTML += "<br\>";

                    document.getElementById('messages').innerHTML += "<b> Fahrerlaubnis </b><br\>";
                    document.getElementById('messages').innerHTML += "Zuigeordnete Firma: "+fahrerlaubnis.zugeordneteFirma+'<br\>';
                    document.getElementById('messages').innerHTML += "Gueltig seit: "+fahrerlaubnis.gueltigSeit+'<br\>';
                    document.getElementById('messages').innerHTML += "Klassen: ";
                    for(i=0,j=klassen.length; i<j; i++){
                        document.getElementById('messages').innerHTML += klassen[i];
                        if(i == j-1){
                            document.getElementById('messages').innerHTML += "<br\>";
                        }
                        else{
                            document.getElementById('messages').innerHTML += ", ";
                        }
                    }
                    document.getElementById('messages').innerHTML += "Fahrzeugtypen: ";
                    for(i=0,j=fahrzeugtypen.length; i<j; i++){
                        document.getElementById('messages').innerHTML += fahrzeugtypen[i];
                        if(i == j-1){
                            document.getElementById('messages').innerHTML += "<br\>";
                        }
                        else{
                            document.getElementById('messages').innerHTML += ", ";
                        }
                    }
                    document.getElementById('messages').innerHTML += "<br\>";

                    document.getElementById('messages').innerHTML += "<b> Lieferant </b><br\>";
                    document.getElementById('messages').innerHTML += "QS: "+lieferant.qS+'<br\>';
                    document.getElementById('messages').innerHTML += "Lieferantenart: "+lieferant.lieferantenart+'<br\>';
                    if(auftraggeberliste.length > 0){
                        var space = "&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp&nbsp";
                        document.getElementById('messages').innerHTML += "Auftraggeber Liste: <br/>";
                        for(i=0,j=auftraggeberliste.length; i<j; i++){
                            var auftraggeber = auftraggeberliste[i];
                            document.getElementById('messages').innerHTML += "&nbsp&nbsp&nbsp"+(i+1)+") Auftraggeber:<br/>";
                            document.getElementById('messages').innerHTML += space+"Firmen ID Auftraggeber: "+auftraggeber.firmenIDAuftraggeber+"<br/>";
                            document.getElementById('messages').innerHTML += space+"Auftraggeber Name: "+auftraggeber.auftraggeberName+"<br/>";
                            document.getElementById('messages').innerHTML += space+"QS: "+auftraggeber.qS+"<br/>";
                        }
                    }
                    document.getElementById('messages').innerHTML += "<br\>";
                });
            }
        </script>   </head>         <body onLoad="init()">
        <h3>Uebermittle Ausweisdaten</h3>
        <table>             <tr>
                <td>
                    <br/><b>Ihre Daten: </b><br/><br/>
                    <div id="messages"></div>
                </td>
            </tr>
        </table>     </body> </html>

这些 HTML 将生成如下内容:

Result

如果我使用 AJAX 作为入站,我可以通过在连接器上指定 resourceBase 属性来轻松实现这一点。但是,我需要的是:HTTP Get 作为入站。

如何做到这一点? http中有没有和resourceBase属性类似的属性?谢谢

最佳答案

按照说明使用静态资源处理程序 here .

关于javascript - 骡子 ESB : Proceed HTTP Response with HTML and Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23884650/

相关文章:

链接顶部的 Javascript 元素

javascript - document.createElement ('img' ) v/s new Image()?哪一个要附加到 DOM?

http - 为什么reqwest HTTP库返回二进制数据而不是文本主体?

c# - 维基百科查询返回错误 403

javascript - 我怎样才能减少这个功能的样板文件?

javascript - 从元素ajax调用父页面中的函数 - 加载到div中

html - 使用 vw 字体大小时填充文本

java - 文件过早结束 SAXParseException HttpServletRequest

Javascript 为每个 if 而不是多个 if

javascript - jQuery 和 If 语句取消选择单选按钮