我想將網站參數傳遞給webapi,但無法工作。將長參數傳遞給asp.net webapi
Webapiconfig:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
的Web API控制器:採取帕拉姆並返回其他網站的htmlsnapshot
[HttpGet]
[Route("api/snapshot/{param}")]
public string GetSnapShot(string param)
{
string fragment = param;
string content = "";
if (fragment != null)
{
int firstSlash = fragment.IndexOf("/");
if (firstSlash <= 2)
fragment = fragment.Substring(firstSlash + 1, fragment.Length - firstSlash - 1);
using (IWebDriver driver = new PhantomJSDriver())
{
string url = String.Format("http://domain.com/{0}", fragment);
driver.Navigate().GoToUrl(url);
content = driver.PageSource;
}
}
return content;
}
,如果我嘗試API /快照/ DU-代替 - >打控制器罰款,但如果我通過像更復雜
api /快照/%2Fdu-lieu%2Fong-da-y-Serie-A%2Fseason%2F1%2Fong-quan - >無法正常工作,返回404
請指教。
不,我只希望它有一個獨特的參數,因爲其他站點會通過動態參數傳遞,我的webapi返回htmlsnapshot。我已經完全更新了我的代碼。 –
是否有任何錯誤消息或定義「不工作」的內容? –
它返回404錯誤。謝謝 –