POST フォームに「タイトル」フィールドを追加し、モデルに「タイトル」属性を作成しました。ビデオがアップロードされた後、サーバーは別のコントローラーに転送されます。これは、ポリシー ファイルでリダイレクト フィールドを設定することによって行われます。リダイレクトされたコントローラーのタイトル フィールドにアクセスするにはどうすればよいでしょうか。
POST フォーム:
<form action="@Model.FileUploadModel.FormAction" method="@Model.FileUploadModel.FormMethod" enctype="@Model.FileUploadModel.FormEnclosureType" >
<input type="hidden" name="key" value="@Model.FileUploadModel.FileId" />
<input type="hidden" name="AWSAccessKeyId" value="@Model.FileUploadModel.AWSAccessKey" />
<input type="hidden" name="acl" value="@Model.FileUploadModel.Acl" />
<input type="hidden" name="policy" value="@Model.FileUploadModel.Base64EncodedPolicy" />
<input type="hidden" name="signature" value="@Model.FileUploadModel.Signature" />
<input type="hidden" name="redirect" value="@Model.FileUploadModel.RedirectUrl" />
<div class="row">
**<label for="Title" style="padding-right: 5px;">Title (optional) </label>
<input type="text" name="Title" style="width: 200px;" />**
</div>
<div class="row_clear"></div>
<div class="row">
<input type="file" name="file" size="100" id="file"/>
</div>
</form>
と私の FileUploadModel
public FileUploadModel(string publicKey, string privateKey, string bucketName, string redirectUrl)
{
myPrivateKey = privateKey;
FormAction = string.Format("https://{0}.s3.amazonaws.com/", bucketName);
FormMethod = "post";
FormEnclosureType = "multipart/form-data";
Bucket = bucketName;
FileId = "u5/i/" + Guid.NewGuid().ToString();
AWSAccessKey = publicKey;
Acl = "private";
RedirectUrl = redirectUrl;
}
public string FormAction { get; private set; }
public string FormMethod { get; private set; }
public string FormEnclosureType { get; private set; }
public string Bucket { get; private set; }
public string Acl { get; private set; }
public string Policy { get; private set; }
public string FileId { get; private set; }
public string AWSAccessKey { get; private set; }
public string RedirectUrl { get; private set; }
[Display(Name = "Title (optional)")]
public string Title { get; set; }
[Display(Name = "File")]
public HttpPostedFileBase File { get; set; }
public int? Page { get; set; }
public string SearchString { get; set; }
}
}
ポリシーフォームを作成するために参照したリンクは次のとおりです。