Chcę przesłać plik z klienta na serwer. Czy istnieje sposób na przesłanie pliku za pomocą SignalR lub czy potrzebuję do tego kontrolera?ASP.NET MVC - Prześlij plik z SignalR
Odpowiedz
SignalR służy do przesyłania wiadomości w czasie rzeczywistym, bez przesyłania plików.
Założono, że chcę zbudować strumień, który mógłby zostać przekazany do komponentu po stronie serwera, który wymagałby możliwości wyszukiwania w dużym pliku, w którym klient jest przeglądarką z interfejsem JS API. Co powinienem użyć, aby wprowadzić to w sposób mało wydajny? – ehdv
Przesyłanie strumieniowe postu do punktu końcowego webapi działałoby dobrze. W rzeczywistości, podczas przetwarzania może wywoływać zdarzenia push dotyczące statusu przetwarzania po stronie serwera w czasie rzeczywistym, jeśli powiadomi Twój koncentrator, aby przesłać go do klienta podczas sprawdzania strumienia. – Bon
Podczas gdy SignalR nie może pomóc przy rzeczywistym przesyłaniu, it can be used for updating the client with progress while a file is uploaded.
Przesyłanie tego pliku przy użyciu wtyczki bootstrap do wprowadzania danych (krajee) Możesz również przesłać plik bez korzystania z tej wtyczki.
@section Page{
<script src="~/Scripts/bootstrap-switch.min.js"></script>
<script src="~/Scripts/Uploader/fileinput.js"></script>
<link href="~/Scripts/Uploader/fileinput.css" rel="stylesheet" />
<script>
var itemHub = $.connection.ItemHub;
$(document).ready(function() {
$.connection.hub.start().done(function() {
//do any thing
});
$("#fileinput").fileinput({
allowedFileExtensions: ["jpg", "png", "gif", "jpeg"],
maxImageWidth: 700,
maxImageHeight: 700,
resizePreference: 'height',
maxFileCount: 1,
resizeImage: true
});
$("#fileinput").on('fileloaded', function (event, file, previewId, index, reader) {
var readers = new FileReader();
readers.onloadend = function() {
$(".file-preview-image").attr('src', readers.result);
}
readers.readAsDataURL(file);
});
$('#btnSave').click(function() {
var imagesJson = $('.file-preview-image').map(function() {
var $this = $(this);
return {
image: $this.attr('src'),
filename: $this.attr('data-filename')
};
}).toArray();
itemHub.server.getByteArray(imagesJson);
});
});
</script>
}
Hub kod klasy
[HubName("ItemHub")]
public class ItemHub : Hub
{
public void GetByteArray(IEnumerable<ImageData> images)
{
foreach (var item in images ?? Enumerable.Empty<ImageData>())
{
var tokens = item.Image.Split(',');
if (tokens.Length > 1)
{
byte[] buffer = Convert.FromBase64String(tokens[1]);
}
}
}
}
public class ImageData
{
public string Description { get; set; }
public string Filename { get; set; }
public string Image { get; set; }
}
- 1. Eksportowanie plik PDF z ASP.NET MVC
- 2. ASP.NET MVC wykluczyć plik CSS z wiązki
- 3. "Prześlij" plik z powłoki django
- 4. Prześlij plik Excel i wyświetl go w tabeli w asp.net MVC
- 5. Czat listy znajomych z chatjs.net SignalR MVC
- 6. Jakieś próbki dla mvc6 z signalr?
- 7. ASP.NET MVC powrócić ViewResult jako plik html
- 8. ASP.NET MVC EPPlus Pobierz plik Excel
- 9. ASP.NET MVC Pobierz plik ze ścieżką wirtualną
- 10. Czy plik() w asp.net mvc zamknąć strumień?
- 11. Prześlij plik na aplikację Express.js
- 12. Angular - prześlij plik jako base64
- 13. ASp.net MVC z Report Viewer?
- 14. Ajax z Asp.Net MVC?
- 15. KnockOut.js z Asp.net mvc
- 16. ASP.NET MVC powrocie spakowany plik z FileResult brakuje rozszerzenia
- 17. Prześlij plik bezpośrednio do S3 z paskiem postępu
- 18. Prześlij plik stop z Nieoczekiwany EOF przeczytać na wyjątek gniazda
- 19. signalR:/signalr/hubs nie jest generowany
- 20. MVC MiniProfiler z ASP.NET MVC 4
- 21. Autofac Integracja MVC z ASP.Net MVC 4
- 22. Prześlij obraz zawarte w modelu MVC
- 23. Jak używać SignalR do powiadamiania klientów WWW z ASP.NET MVC 3, że zadania MSMQ zostały zakończone?
- 24. ASP.Net MVC RedirectToAction z kotwicy
- 25. PayPal API z ASP.NET MVC
- 26. Kendo DropDownListFor() z ASP.NET-MVC
- 27. ASP.NET MVC UpdateModel z interfejsem
- 28. Websockets z ASP.NET MVC/MVVM
- 29. Wielojęzyczne witryny z ASP.NET MVC
- 30. ASP.NET MVC z Entity Framework
Dlaczego należałoby użyć SignalR za to zamiast tylko HttpPost do kontrolera? – drch