質問: asp.net mvcを使用したuploadify(セッションと認証) uplodify( http://www.uploadify.com/ )で使用されるアクションまたはコントローラーで承認フィルターを使用すると、アクションに到達しません...さらに、セッションは取得されません。私はこれを取得したユーザーセッションに見つけました: http://geekswithblogs.net/apopovsky/archive/2009/05/06/working-around-flash-cookie-bug-in-asp.net-mvc.aspx しかし、[authorize]フィルターと取得したセッションでそれを使用するにはどうすればよいですか?
回答: このソリューションはうまく機能します。誰かがそれを望むなら、私はコードをvbに翻訳しました: protected sub application_beginrequest(byval sender as object, byval e as system.eventargs) 'we guess at this point session is not already retrieved by application so we recreate cookie with the session id... try dim session_param_name = "aspsessid" dim session_cookie_name = "asp.net_sessionid" if not httpcontext.current.request.form(session_param_name) is nothing then updatecookie(session_cookie_name, httpcontext.current.request.form(session_param_name)) elseif not httpcontext.current.request.querystring(session_param_name) is nothing then updatecookie(session_cookie_name, httpcontext.current.request.querystring(session_param_name)) end if catch ex as exception end try try dim auth_param_name = "authid" dim auth_cookie_name = formsauthentication.formscookiename if not httpcontext.current.request.form(auth_param_name) is nothing then updatecookie(auth_cookie_name, httpcontext.current.request.form(auth_param_name)) elseif not httpcontext.current.request.querystring(auth_param_name) is nothing then updatecookie(auth_cookie_name, httpcontext.current.request.querystring(auth_param_name)) end if catch ex as exception end try end sub private sub updatecookie(byval cookie_name as string, byval cookie_value as string) dim cookie = httpcontext.current.request.cookies.get(cookie_name) if cookie is nothing then cookie = new httpcookie(cookie_name) end if cookie.value = cookie_value httpcontext.current.request.cookies.set(cookie) end sub javascript変数の割り当ての部分は次のとおりです。var auth = "<%=iif(request.cookies(formsauthentication.formscookiename) is nothing, "", request.cookies(formsauthentication.formscookiename).value)%>"; var aspsessid = "<%=session.sessionid%>"; たぶんvbで働いている誰かがそれから利益を得ることができます。