2013-10-17 16 views
5

Tôi đang sử dụng BackgroundTransferRequest trong ứng dụng WP8 để tải tệp lên máy chủ của tôi. Máy chủ nhận tệp và gửi phản hồi lại với một số thông tin hữu ích về tệp được tải lên. Làm thế nào tôi có thể nhận được thông tin này?Có khả năng tải lên kết quả của BackgroundTransferRequest không?

Dường như không có API cho điều đó (xấu hổ). Có lẽ, tôi đang thiếu một cái gì đó.

Lưu ý rằng request.BytesReceived thuộc tính trả về 99 byte, có vẻ như yêu cầu biết cách lấy lại dữ liệu từ máy chủ.

Trả lời

1

Với sự trợ giúp tuyệt vời của Eric Fleck form MSFT, chúng tôi phát hiện ra rằng thêm DownloadLocationMethod="Post" thuộc tính phản hồi sẽ được ghi trong tệp DownloadLocation. Vì vậy, yêu cầu hợp lệ là:

var request = new BackgroundTransferRequest(targetUri) 
    { 
     DownloadLocation = new Uri(downloadTo, UriKind.Relative), 
     UploadLocation = new Uri(uploadFrom, UriKind.Relative), 
     Method = "POST" 
    }; 
+0

shusha hi, tôi có tình huống tương tự như của bạn. máy chủ trả về một số dữ liệu jSon sau khi tải lên tệp thành công. Tôi muốn lấy dữ liệu đó. ở đây như bạn đã nói, tôi thấy rằng 'BackgroundTransferRequest' cho thấy' BytesReceived'. ở đây tôi đã thử bằng cách gán 'DownloadLocation' để lấy dữ liệu đó. nhưng bằng cách nào đó có vẻ như dữ liệu đã tải xuống không được sao chép vào tệp trong thư mục 'Shared/Transfers' của IsolatedStorage. Plz hướng dẫn thêm cho tôi nếu có thể .. –

+0

@KevalLangalia đảm bảo rằng bạn thực sự có phần '/ shared/transfer' trong đường dẫn của mình –

+0

Tôi đã phát hiện sự cố. đó là yêu cầu không thành công, tôi đã giải quyết nó và nhận được phản hồi. Cảm ơn những nỗ lực của bạn .. :) –

0

Dường như có hai sự kiện bạn có thể đăng ký, TransferStatusChangedTransferProgressChanged (xem trang MSDN BackgroundTransferRequest). Những thông tin này có cung cấp thông tin bạn đang tìm kiếm không?

Ngoài ra còn có một ví dụ "How to implement background file transfers for Windows Phone" hiển thị cách hiển thị thông tin chuyển cho nhiều lần chuyển.

+0

Tôi đã từng nghiên cứu từng dòng trong MSDN về Chuyển nền trong WP8 - không có gì hữu ích cho câu hỏi của tôi. Ngoài ra những sự kiện đó không có gì liên quan đến việc tải lên kết quả như tên của chúng. –

+0

Tôi phải hiểu lầm câu hỏi của bạn. "Thông tin hữu ích" này được gửi lại là gì? Bạn đã lấy phản hồi từ Fiddler hay một cái gì đó tương tự? – Jedidja

+0

Trả lời yêu cầu trả về máy chủ yêu cầu tải lên POST và Id của tệp. Tôi có một thực hiện cho việc này bằng cách sử dụng 'HttpClient' và API của nó cho phép đọc nội dung phản hồi, nhưng tôi muốn sử dụng' BackgroundTransferService' thay thế. –

Các vấn đề liên quan