• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Microsoft Translator

Skaduro

New member
Hallo,
hat irgendjemand einen Link zu einer Anleitung für einbindung über http-request? Bzw. in wie weit die URL angepasst werden müßte, das die übersetzung automatisch kommt.
https://api.datamarket.azure.com/Bi...anslate?Text='wie geht das'&To='en'&From='de'

Ich finde irgenwie nur ASP beispiele oder Excell. Ich möchte allerdings den Text einfach über Requestobjekt senden und Antwort auswerten. ich vermute ich benötige etwas wie &nutzer=.... .

Viele Grüße und schon einmal Danke für Antworten

Skaduro
 
Sofern der Request an eine fremde Domain gehen soll, wird dir die SOP fürchte ich für Javascript einen Strich durch die Rechnung machen.
Die Same-Origin-Policy (SOP) ist ein Sicherheitskonzept, das clientseitigen Skriptsprachen wie JavaScript und ActionScript, aber auch Cascading Style Sheets untersagt, auf Objekte (zum Beispiel Grafiken) zuzugreifen, die von einer anderen Webseite stammen oder deren Speicherort nicht der Origin entspricht.

Du mußt da auf serverseitige Sprachen wie PHP ausweichen.
 
Erlaubt hier Microsoft nicht das cros-over? bzw. auch bei php bräuchte ich doch erlaubnis für crossover.
Wobei mir auch eine Anleitung für php weiterhelfen würde.

Grüße Skaduro

- - - Aktualisiert - - -

Auf GetTranslations Method gibt es ein ASP beispiel, ich würde es gern einfach über HTML und Javascript lösen. Unten das Beispiel für ASP:

HTML:
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript">
        var languageFrom = "es";
        var languageTo = "en";
        var text = "una importante contribución a la rentabilidad de la empresa";
        var options = "{\"User\":\"TestUserId\"}";
        function getTranslations() {
            PageMethods.GetAccessToken(OnSucceeded, OnFailed);

        }
        function OnSucceeded(result, usercontext, methodName) {

            window.mycallback = function (response) {
                var array = response.Translations;
                var translations = "Available translations for source text '" + text + "' are <br />";
                for (var i = 0; i < array.length; i++) {

                    translations = translations + "Translated text: " + array[i].TranslatedText + "<br />Rating: " + array[i].Rating + "<br />Count: " + array[i].Count + "<br /><br />";
                }
                document.getElementById('<%= lblResult.ClientID %>').innerHTML = translations;

            }

            var s = document.createElement("script");
            s.src = "http://api.microsofttranslator.com/V2/Ajax.svc/GetTranslations?oncomplete=mycallback&appId=Bearer " + encodeURIComponent(result.access_token) + "&text=" + encodeURIComponent(text) + "&from=" + languageFrom +
            "&to=" + languageTo + "&maxTranslations=5&options=" + options;
            document.getElementsByTagName("head")[0].appendChild(s);
        }
        function OnFailed(error, userContext, methodName) {
            alert("Error");
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:ScriptManager ID="ScriptManager" runat="server" EnablePageMethods="true" />
        <asp:Button ID="buttonGetTrans" runat="server" Text="GetTranslations" OnClientClick="getTranslations();return false;" />
        <br />
        <asp:Label ID="lblResult" runat="server"></asp:Label>
    </div>
    </form>
</body>
</html>
 
Zuletzt bearbeitet von einem Moderator:
Erlaubt hier Microsoft nicht das cros-over? bzw. auch bei php bräuchte ich doch erlaubnis für crossover.
Ich kenne kein "crossover"... Und eine "Erlaubnis" dafür brauchst du bei PHP: cURL - Manual auch nicht.

ein ASP beispiel, ich würde es gern einfach über HTML und Javascript lösen.
Du solltest dir unbedingt den Unterschied zwischen server- und clientseitiger Programmierung klarmachen: web development - What are the difference between server-side and client-side programming? - Programmers Stack Exchange

Zum Thema an sich:
Ich verstehe ehrlich gesagt nicht, was der Link im ersten Beitrag soll - so wie ich dich verstanden habe, möchtest du via JS einen Text übersetzen: Google Translate API Tutorial for PHP / Javascript / Java
 
Ich denke das einfachste ist wirklich, sich an die Google Translation API zu hängen. Ich habe gerade mal ein wenig gegoogelt, aber keine wirklich gute Information für Übersetzungen mit JS gefunden. Das einzige was es gibt, ist die i18n_lib (i18next - i18n for javascript). Das ist aber vermutlich nicht das, was du willst.
 
Ich möchte Bing nutzen, da für 2 millionen Character kostenlos. Wie Google einbindbar ist, hatte ich gefunden. Für bing sind die Dokumentationen leider schlechter. Was Server und was Clientseitig ist ist mir schon klar. Allerdings ist es nicht wichtig ob ich den Text per PHP oder per Javascript sende und übersetze, das die Übersetzten Texte in neue HTML-Seiten übersetzt werden, welche dann unter neuen Namen gespeichert werden. Da keine Live übersetzung notwendig ist, reichen auch die 2 Mio Character.
MSDN Blogs
Wobei ich gerade aus dem MSDN-Block eine Lösung austesten werde, vieleicht komme ich damit weiter, würde Lösung dann nochmal posten damit klar ist was ich meinte, wäre aber auch noch an Vorschlägen interessiert, wenn sie für Bing zutreffen und nicht die kostenpflichtige alternative von google.

Grüße Skaduro
 
Zurück
Oben