Asp.Net MVC

Web Api ブラウザからアクセスできない、Ajaxでアクセスできる、XMLHttpRequestもアクセスできない現象が発生しています。

テストするためのAPIを作成して、それはVisual Studio 2015のデフォルトで生成されたクラス

WebApiのコード

自動生成されたコードなので、説明する部分以外を省略させます。

public class TestController : ApiController
{
    // GET api/<controller>/5
    public string Get(int id)
    {
        //ZXR.Core.ClientInfoContext .Current .
        return "value11";
    }

}

Routesの登録

config.Routes.MapHttpRoute(
	name: "DefaultApi",
	routeTemplate: "api/{controller}/{id}",
	defaults: new { id = System.Web.Http.RouteParameter.Optional }
);

Ajaxアクセスのコード

$.ajax({
        contentType: 'application/json; charset=utf-8',
        url: 'http://localhost:55223/api/test/get/',
        data: { 'id': 5 },
        dataType: 'json',
        cache: false,
        crossDomain: true,
        type: 'GET',
        success: function (
            data, textStatus, jqXHR) {
            alert(jqXHR.responseJSON);
        },
        error: function (data, textStatus, jqXHR) {
            alert(data.responseJSON.Message);
        }
});

Ajaxでは下記のURLでアクセスできるが

url: 'http://localhost:55223/api/test/get/',

XMLHttpRequest方式とブラウザでは、上記のようなURLはアクセスができない、下記のようなURLにしないとダメ

http://localhost:55223/api/test?id=2
http://localhost:55223/api/test/get?id=2

XMLHttpRequestアクセスのコード

function getXmlHttpObject(){
	if (window.XMLHttpRequest)
		return new XMLHttpRequest();
	else if (window.ActiveXObject)
		return new ActiveXObject("Microsoft.XMLHTTP");
	else {
		alert("XMLHttpRequest not supported!");
		return null;
	}
}

function handleHttpResponse() {
	if (request.readyState == 4) {
		results = http.responseText;
		alert(results);
	}
}
var request;
function GetState(id) {
    request = GetXmlHttpRequest();
    request.onreadystatechange = callBack;
    var url = "http://localhost:55223/api/test/get?id=" + id;
    request.open("GET", url, true);
    request.send(null);
}


あなたのお住まいの地域で最安のブロードバンド選び

コメント:



(画像の文字列を入力して下さい)

トップ   編集 凍結 差分 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2019/12/02 (月) 12:44:21 (1627d)

PCpዾyǗlgĂ܂}WŔ܂z 萔O~ył񂫁z Yahoo yV NTT-X Store

z[y[W ̃NWbgJ[h COiq ӂ邳Ɣ[ COsیI COze