我想在移动加速项目中使用移动加速页面,我在asp.net移动虚拟现实项目中工作,因为我有两个文件,一个用于移动设备,一个用于桌面。那么我可以在手机上使用AMP吗?
如果我可以使用组合,有什么问题吗?或者我必须为移动设备创建新的项目?
发布于 2017-01-25 18:57:59
阅读AMP Project网站可能是个好主意。然而,我们有AMP WebForms,我们通过剥离ASP.NET并转换内容以支持AMP标签,动态地创建了我们内容的AMP版本。换句话说,我们有两个版本的代码,一个AMP,一个非AMP。
在您的特定情况下,您必须编写采用现有代码库并输出AMP版本的代码。
我的建议--谷歌,阅读,重复。
发布于 2018-03-14 14:19:17
这是在Asp.net Mvc应用程序中使用Amp的最简单方法。
第1步控制器
创建一个控制器,将其命名为AMP,如下所示
public class AmpController : Controller
{
public ActionResult Index()
{
//Return page which contain Amp
return View();
}
}在将视图返回到现有的家庭或默认控制器之前添加此行,这会将移动流量重定向到Amp
public class HomeController : Controller
{
public ActionResult Index()
{
if (Request.Browser.IsMobileDevice)
{
Response.Redirect("~/Amp/Index");
}
//This is not Amp View
return View();
}
}第2步索引视图
查看放大器控制器的索引文件必须是Amp 验证,您可以检查页面的html渲染是否Amp通过启动您的asp.net mvc工程和浏览localhost:0000/Amp/Index这里替换为您自己的本地主机,然后当页面显示右击查看源代码复制它,然后通过到Amp validator检查它是否有效。
这里是有效的Amp,您可以通过内部索引的Amp控制器视图转到Amp site
通过这种方式,您可以在Asp.net mvc中创建Amp页面。
添加
使用Amp时,不要忘记替换这些Razor属性
然后,您可以在body中像这样使用javascript
<amp-iframe width="0" height="0"
sandbox="allow-scripts allow-same-origin"
layout="responsive"
frameborder="0"
src="~/Scripts/yourscriptname.js">
</amp-iframe>4.空格问题当使用amp时,如果你在编写Amp时留下空格或任何东西,你可能会面临验证错误,所以你需要使用Vs格式代码或css compressor7格式化你的代码,这背后的想法是你的页面消耗更多的字节当它有更多的白色space.When时,你从记事本或任何编辑器上从他们的网站复制粘贴Amp代码,它会在代码中添加一些额外的空格,这样该页面就不会被验证为Amp。
5. Git Here上提供的是我在Mvc上的Amp项目,但如果您正在使用SEO,您可以根据您的业务需求对其进行修改。
发布于 2017-01-31 21:58:58
我不认为你必须创建一个新的项目,因为AMP和非AMP版本之间的主要区别只是你的视图,你可能不应该接触你的控制器或模型。
有一个interesting article有一个干净的解决方案,它注册了一个自定义显示模式,它动态地决定asp.net mvc是否必须服务于AMP或非AMP版本。
https://stackoverflow.com/questions/41743152
复制相似问题