jsonp (Web サービス用) を取得するように応答を変更しようとしていますが、問題は write メソッドが呼び出されないことです。最後に flush() が呼び出されるだけで、URL は localhost:8080/api/employees です。
その呼び出し元の Web API と従業員はコントローラー ファイルです。
呼び出されるコントローラーメソッド
public List<Models.Employee> Get() {
var employees = from e in _context.Employees
select new Models.Employee {
Id = e.EmployeeID,
FirstName = e.FirstName,
LastName = e.LastName
};
return employees.ToList();
}
呼び出される IHTTPModule メソッド
public void OnReleaseRequestState(object sender, EventArgs e)
{
HttpResponse response = HttpContext.Current.Response;
if (response.ContentType != JSON_CONTENT_TYPE && response.ContentType != JSON_CONTENT_TYPE1) return;
//response.ContentEncoding =
// char[] c = { 'd', 's', 'w', 'w' };
response.Filter = new JsonResponseFilter(response.Filter);
//response.Cache.
// response.ClearContent();
// response.Write(c, 0, 4);
// response.Flush();
}
現在、JsonResponseFilter.write は呼び出されていません。これが問題です。誰かが親切に返信して解決してください。