Problème: Microsoft Traduire HTTP 414 sur retour long texte à traduire les demandesAzure Microsoft Traduire du texte, les résultats à long entrée dans HTTP 414
Question: Y at-il un moyen de contourner cela pour limiter les erreurs?
Contexte
Je cherche à traduire plusieurs paragraphes de texte à la fois via Microsoft Traduire API Texte dans le nouveau nuage Azure via cette API http://docs.microsofttranslator.com/text-translate.html#!/default/get_Translate. L'API semble uniquement prendre en charge l'envoi de texte via http GET
et un paramètre de requête ?text=
. Typiquement, je m'attendrais à être en mesure d'accomplir cela via le corps d'un POST, mais l'API semble seulement soutenir GET. Il y a un POSTE TranslateArray
mais il faut toujours texts
via query param selon testing/swagger. Les documents API spécifient une limite de 10 000 caractères, mais j'obtiens fréquemment des réponses d'erreur HTTP 414 Request-URI Too Long
sur des tailles inférieures à cela, je suppose en raison de l'URL longue qui inclut également un jeton JWT.
Je cherche un moyen de contourner cela pour réduire mon taux d'erreur à Microsoft Translate. J'ai envisagé de segmenter le texte en plusieurs morceaux, mais sans un bon tokenizer dans la langue maternelle, je pense que je risque de briser le contexte/la signification et de déformer la traduction.
Une URL peut avoir une longueur maximale d'environ 2000 caractères généralement pour que ne peut pas aller à 10 000. – juunas
Oui, je suis conscient que de nombreux navigateurs ont des limites, mais cela se fait via le code et j'ai lu des limites plus élevées telles que 8192 dans Apache. Je ne suis pas sûr comment Microsoft a implémenté leur serveur mais le paramètre de requête a le texte ci-dessous dans leurs documents pour "texte" qui contribue à la source de ma confusion s'il n'y a aucun moyen d'envoyer du texte dans le corps. \t ** "OBLIGATOIRE: Une chaîne représentant le texte à traduire La taille du texte ne doit pas dépasser dix mille caractères." ** – aaa572