每次启动api时,都会使用LOCALHOST:PORT/api/values/
执行。如何使用静态主页LOCALHOST:PORT/
?
答案 0 :(得分:0)
你在找这样的东西吗?
$.ajax({
url: "/api/values/METHOD/?PARAM=0",
type: "GET",
dataType: "json",
cache: false,
statusCode: {
200: function (data) {
//Do stuff
}
}
});
在解决方案上下文中运行的任何内容都将从根目录开始。
答案 1 :(得分:0)
在您的项目中,找到您的launchSettings.json文件。在visual studio中,您需要展开“属性”以从解决方案资源管理器中查找它或使用Ctrl + T.此文件包含一系列配置文件。每个配置文件都有一个launchUrl字段,您可以在其中提及您的路径为空。
在主页中添加内容时,您始终可以按如下方式制作中间件:
class Base
{
protected:
Base()
{
}
public:
void initialize()
{
doInitialize();
}
template<typename D, typename... Ts>
static std::shared_ptr<D> create(Ts... args)
{
auto d = std::shared_ptr<D>(new D(args...));
d->initialize();
return d;
}
virtual ~Base() = default;
protected:
virtual void doInitialize() = 0;
};
class Derived : public Base
{
private:
int value_;
public:
Derived(int v) : value_(v)
{}
private:
void doInitialize() override
{
//Do something with value_
}
};
int main()
{
auto derived = Base::create<Derived>(42);
return 0;
}
你总是可以有一个动作,但我建议你使用像上面这样的中间件。
答案 2 :(得分:0)
How to set start page in dotnet core web api?
可能重复我认为您的意思是在用户导航到http://localhost而不是调用http://localhost/api/controller时设置默认页面。
在.net核心2中,它的仙女很容易做到。如果您只想通过添加
来显示简单的静态页面,则可以使用静态文件app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}");
});
并确保wwwroot文件夹中有index.html。
或者您可以在mvc中使用路由
totalDistances
见aslan在https://stackoverflow.com/a/40651363/3786363
的回答哦,除非您的服务器映射到端口80,否则您可能需要调用localhost:port而不仅仅是localhost。