2016-08-24 288 views
1

我的网络API抛出的错误,当我运行it.It说无法连接到远程服务器

服务器错误“/”应用

所以,修复它我在HelpPageAreaRegistration.cs的RegisterArea方法中更改了Help/{action}/{apiId}{Controller}/{action}/{apiId}。以下是方法。现在

public override void RegisterArea(AreaRegistrationContext context) 
{ 
    context.MapRoute(
     "HelpPage_Default", 
     "Help/{action}/{apiId}", 
     new { controller = "Help", action = "Index", apiId = UrlParameter.Optional }); 

    HelpPageConfig.Register(GlobalConfiguration.Configuration); 
} 

,这个问题是固定的,但是当我跑我的web应用程序,它给了我错误说couldnot连接到远程server.Below是从Web应用程序调用的API就行了。

HttpResponseMessage response = await Http.PostAsJsonAsync("Account/Authenticate", model).ConfigureAwait(false); 

和网络API,

[Route("Authenticate")] 
[HttpPost] 
[ValidateModel] 
public AuthResponseServiceModel Authenticate(AuthRequestServiceModel sm) 
{ 
    //code 
} 

完全不知道我在API修复如何打破Web应用程序和Web API之间的连接。 请让我知道我是否缺少任何东西。

+1

假设您启用了属性路由,您的控制器上是否有[RoutePrefix(“Account”)]? – Developer

+0

是的,我有.. – user3092654

+0

可能是一个非常愚蠢的怀疑;您是否尝试为“/”Http.PostAsJsonAsync(“/ Account/Authenticate”,模型)添加前缀 – Developer

回答

0

得到它解决了.. 只是条代替以下功能Routeconfig.cs

routes.MapRoute( 名称: “默认”, 网址: “{控制器}/{行动}/{ID}”, 默认值:new {controller =“Help”,action =“Index”,id = UrlParameter.Optional} );

下面温控功能

routes.MapRoute( 名: “默认”, URL: “”, 的默认值:新{控制器= “帮助”,动作= “索引”} ).DataTokens = new RouteValueDictionary(new {area =“HelpPage”});

并将RegisterArea方法中的更改还原为原始。

相关问题