成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

創(chuàng)建兩個項目

首先,我們需要創(chuàng)建兩個項目,一個是MVC項目,另一個是WebAPI項目。這兩個項目將用于實現(xiàn)跨域調(diào)用的功能。MVC前端代碼在MVC項目的前端代碼中,我們需要編寫一段JavaScript代碼來調(diào)用Web

首先,我們需要創(chuàng)建兩個項目,一個是MVC項目,另一個是WebAPI項目。這兩個項目將用于實現(xiàn)跨域調(diào)用的功能。

MVC前端代碼

在MVC項目的前端代碼中,我們需要編寫一段JavaScript代碼來調(diào)用WebAPI的方法。具體的代碼如下所示:

```javascript

$.ajax({

url: "http://localhost:5000/api/method",

method: "GET",

success: function(response) {

// 處理返回的數(shù)據(jù)

},

error: function(error) {

// 處理錯誤

}

});

```

在上述代碼中,我們使用了jQuery的AJAX方法來發(fā)送GET請求到WebAPI的方法。需要注意的是,URL應該替換為你實際的WebAPI地址。

在WebAPI中配置跨域

為了使MVC能夠跨域調(diào)用WebAPI的方法,我們需要進行一些配置。在WebAPI項目的根目錄下,新建一個類,并在需要跨域的方法前面添加跨域操作的特性。具體的代碼如下所示:

```csharp

public class EnableCrossOriginAttribute : ActionFilterAttribute

{

public override void OnActionExecuting(ActionExecutingContext filterContext)

{

("Access-Control-Allow-Origin", "*");

base.OnActionExecuting(filterContext);

}

}

[EnableCrossOrigin]

public IHttpActionResult Method()

{

// 處理方法邏輯

}

```

上述代碼中,我們創(chuàng)建了一個名為`EnableCrossOriginAttribute`的特性類,它繼承自`ActionFilterAttribute`。在該特性類中,我們通過設置響應頭的方式實現(xiàn)了跨域訪問。然后,在需要跨域的方法上添加了`EnableCrossOrigin`特性,以啟用跨域訪問。

在Controller中調(diào)用WebAPI方法

在MVC項目的Controller中,我們可以使用HttpClient來調(diào)用WebAPI的方法。需要注意的是,我們需要定義一個接收數(shù)據(jù)的實體類來接收返回的數(shù)據(jù)。具體的代碼如下所示:

```csharp

public class DataModel

{

public string Name { get; set; }

public int Age { get; set; }

}

public async Task Index()

{

using (HttpClient client new HttpClient())

{

HttpResponseMessage response await ("http://localhost:5000/api/method");

if ()

{

DataModel data await ();

// 處理返回的數(shù)據(jù)

}

else

{

// 處理錯誤

}

}

return View();

}

```

在上述代碼中,我們首先定義了一個名為`DataModel`的實體類來接收返回的數(shù)據(jù)。然后,我們使用HttpClient發(fā)送GET請求到WebAPI的方法,并根據(jù)返回的狀態(tài)碼來處理返回的數(shù)據(jù)或錯誤。

A調(diào)用B的Demo

最后,我們來看一個完整的示例,其中A調(diào)用B的Demo。在這個示例中,我們假設A是MVC項目,B是WebAPI項目。

A項目的前端代碼:

```javascript

$.ajax({

url: "http://localhost:5000/api/method",

method: "GET",

success: function(response) {

// 處理返回的數(shù)據(jù)

},

error: function(error) {

// 處理錯誤

}

});

```

B項目的Controller代碼:

```csharp

public class EnableCrossOriginAttribute : ActionFilterAttribute

{

public override void OnActionExecuting(ActionExecutingContext filterContext)

{

("Access-Control-Allow-Origin", "*");

base.OnActionExecuting(filterContext);

}

}

[EnableCrossOrigin]

public IHttpActionResult Method()

{

// 處理方法邏輯

}

```

通過以上示例,我們可以實現(xiàn)A項目通過前端JavaScript代碼跨域調(diào)用B項目的WebAPI方法。在B項目中,我們使用了跨域操作的特性類來配置跨域訪問。同時,A項目中的前端代碼通過AJAX方法發(fā)送GET請求到B項目的WebAPI方法,并處理返回的數(shù)據(jù)或錯誤。

標簽: