我正在使用Visual Studio 2015的Web Deploy功能将我的Type Script SPA项目部署到我的登台服务器.
我希望部署过程将一些特定于部署的文件从项目的/ Deployment文件夹复制(并重命名)到项目的其他特定位置.
一个这样的例子是:
[project_root] /Deployment/index.remote.debug.html ---> [project_root] /index.html
我设法使用我的发布配置文件(.pubxml)中的以下部分实现此目的:
<Target Name="index_html">
<ItemGroup>
<_CustomFiles Include="Deployment/index.remote.debug.html" />
<FilesForPackagingFromProject Include="%(_CustomFiles.Identity)">
<DestinationRelativePath>index.html</DestinationRelativePath>
</FilesForPackagingFromProject>
</ItemGroup>
</Target>
<Target Name="extractor_config">
<ItemGroup>
<_CustomFiles Include="Deployment/extractor.config.remote.debug.js" />
<FilesForPackagingFromProject Include="%(_CustomFiles.Identity)">
<DestinationRelativePath>extractor.config.js</DestinationRelativePath>
</FilesForPackagingFromProject>
</ItemGroup>
</Target>
<PropertyGroup>
<CopyAllFilesToSingleFolderForPackageDependsOn>
index_html;
$(CopyAllFilesToSingleFolderForPackageDependsOn);
</CopyAllFilesToSingleFolderForPackageDependsOn>
<CopyAllFilesToSingleFolderForPackageDependsOn>
extractor_config;
$(CopyAllFilesToSingleFolderForPackageDependsOn);
</CopyAllFilesToSingleFolderForPackageDependsOn>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
但这仅在使用"文件系统"选项发布到文件系统时才有效.使用"Web Deploy"选项发布到我的登台服务器时,我看不到任何效果.应用程序已正确部署,但不会复制/重命名相应的文件.
Visual Studio输出中也没有与此类Web部署相关的错误消息.
如果我部署为非管理员或管理员,则没有任何区别.
有谁知道,问题出在哪里?
关于MSBuild我是一个完全的门外汉,这是我第一次遇到.我只是在其他人的在线体验的帮助下把它放在一起.
简短的介绍:
如果用户已经授予我的应用程序对其 google 个人资料的 OAuth 访问权限,我希望他们不必在每次登陆我的主页并自动登录时按“使用 google 登录”按钮。
如果用户尚未授予访问权限,我想向他们展示带有“使用谷歌登录”按钮的登录选项页面。
详细描述:
我正在按照此链接所述实施 Google OAuth 流程:
为了清楚起见,相关流程如下:
我想实现以下目标:
如果用户之前已经允许我的应用程序访问他们的 google 个人资料(无论是在当前计算机上还是其他计算机上),我希望他们在导航到我的应用程序的 URL 后立即产生登录到我的应用程序(使用 google)的印象。无需点击任何东西。
乍一看这不是问题。为了实现这一目标,我将自动执行上述流程的步骤 1 和 2。用户导航到应用程序的 URL 后,将自动重定向到 google oauth 服务器,而无需按“使用 google 登录”按钮。谷歌反过来立即将用户重定向回我的应用程序并提供有效的授权(同样不需要用户输入任何内容)。其余部分保持不变。用户会有立即登录的印象。
但这种方法有一个问题。如果用户第一次访问我的页面(之前没有授予我的应用程序访问权限),他们也会被重定向到 google OAuth 页面。但由于他们还没有授予访问权限,也没有按下任何登录按钮,他们最终会盯着 google oauth 服务器页面,困惑不解,不知道发生了什么。
是否有一些 API,通过它我可以检测到用户尚未授予对我的应用程序的访问权限(我应该首先向他提供“唱入”按钮)?
如果您的解决方案涉及一些 API 调用,请向我指出 HTTP/REST API,因为我不使用(也不想使用)任何更高级别的 OAuth 库。
谢谢。