2017-02-20 5 views
0

J'ai un serveur qui devrait répondre à certaines demandes. Les requêtes contiennent "Content-Type" est égal à "application/x-protobuf", donc j'ai besoin de répondre à un ensemble d'octets (objet proto sérialisé). Quand j'ai essayé d'envoyer ces octets avec Content-Type "text/plain" - chaque octet a été livré avec succès aux utilisateurs, mais quand j'ai essayé de changer cette valeur en "application/x-protobuf" - chaque octet avec une valeur supérieure à 128 était remplacé par \ uFFF8. J'utilise framework cherrypy pour mon serveur.Modification d'un codage en cours de modification Content-Type

Quelqu'un a des idées, pourquoi cela se produit? Et comment savoir quel encodage a été utilisé dans le cas "text/plain".

Merci pour vos réponses.

+0

Eh bien, probablement ce n'est pas question nginx. Seulement si vous n'utilisez pas 'charset' et' charset_types application/x-protobuf' dans nginx config. –

+0

@DmitryMiksIr Vous aviez raison, le problème n'est pas dans le nginx. J'ai couru petit service cherrypy, juste pour vérifier si le problème dans la cerise, et oui, les octets sont changés, et je ne sais pas pourquoi. –

Répondre

0

Google Protocole générateur de code pour les développeurs buffers module nginx https://github.com/dbcode/protobuf-nginx