J'ai un HttpHandler personnalisé qui appelle un webservice pour obtenir un fichier. En test, j'appelle le webservice de production et le HttpHandler renvoie le fichier correctement. Lorsque je le teste dans l'environnement de production sur le serveur, cela fonctionne également. Toutefois, si j'appelle le HttpHandler à partir d'un client distant (pas sur le serveur), le nom de fichier et la taille sont correctement définis, mais les octets de fichier téléchargés sont nuls. Des idées?HttpHandler retournant zéro longueur octet []
1
A
Répondre
1
Alors, voici l'affaire. J'ai créé un multipart range handler (vous devez implémenter le RFC pour diffuser du contenu vers, par exemple, un iPhone ou un Adobe Reader). La spécification est supposée permettre de gérer un fichier lorsque le client demande une plage d'octets au lieu du tableau entier. Le problème avec mon gestionnaire est venu quand le client voulait le BLOB entier:
if (context.Request.Headers[HEADER_RANGE] != null)
{
...
}
else
{
context.Response.ContentType = contentItem.MimeType;
addHeader(context.Response, HEADER_CONTENT_DISPOSITION, "attachment; filename=\"" + contentItem.Filename + "\"");
addHeader(context.Response, HEADER_CONTENT_LENGTH, contentItem.FileBytes.Length.ToString());
context.Response.OutputStream.Write(contentItem.FileBytes, 0, contentItem.FileBytes.Length);
}
j'oublié d'inclure:
context.Response.Flush();
Après avoir ajouté cette ligne de code, il a commencé à travailler dans l'environnement de production. Je trouve très étrange, cependant, que cela fonctionne sur le serveur et non sur les clients. Quelqu'un peut-il nous éclairer sur la raison de ce choix?
Questions connexes
- 1. Suppression de fichiers vides (zéro octet)
- 2. Erreur d'exécution ASP.NET: la longueur ne peut pas être inférieure à zéro. Nom du paramètre: longueur
- 3. Dojo dijit.form.NumberTextBox retournant "NaN"
- 4. HttpHandler Path Problème ASP.NET
- 5. Streaming octet [] vers Image dans ASP.NET C#
- 6. HttpHandler 101 FAIL
- 7. Les minuteurs de longueur zéro sont-ils toujours nécessaires dans jQuery?
- 8. json retournant la liste
- 9. SqlDataReader.Read() retournant toujours faux
- 10. threadPool.SetMaxThreads retournant false
- 11. Conversion d'un octet en un octet de 7 bits
- 12. tête Content-Length toujours zéro
- 13. octet vb.net Convertir php
- 14. trim ip adresse octet
- 15. Conception de code octet?
- 16. Déclaration préparée ne retournant rien
- 17. Stringstream C++ retournant caractère supplémentaire?
- 18. Comment revenir à zéro en utilisant Count() avec plusieurs tables
- 19. Division par zéro Avertissement
- 20. Functors C++ et zéro
- 21. ReportViewer Division par zéro
- 22. Prédire zéro à l'octet
- 23. Pourquoi mysql_num_rows retourne zéro?
- 24. Renvoyer un objet en retournant un tuple
- 25. boost asio: 0 octet écrire
- 26. Comment déclarer un pointeur (octet ^)?
- 27. C# Assembly.Load d'un octet [] questions
- 28. C# octet cast [*, *, *] à l'octet []
- 29. HttpHandler pour accrocher les demandes * .svc
- 30. HttpHandler utilisant l'espace de nom par défaut
Postez le code et vérifiez ce qui se passe avec Wireshark – Andomar