这种优化的URL叫做slugs url,听说有很多的好处。
没有真正去实践过,不过大家都说有好处就实现试试。
首先得到googla translation api,编写翻译程序
具体可参考:http://www.java1995.com/blog/item/41
其次就是怎么与现有的URL进行结合。
如果使用了url rewrite
这时就很好办了,只要把规则重新规定一下就可以。
比如javaeye wiki使用的,就可以通过正则表达式 [\d]+[-]?\w* 来跳转,既不会使用过去的URL失效,新的url又能很好的工作。
最后就是怎么集成现有系统。
第一种方法就是使用客户端来完成这个功能,使用google的js api来实现,这样就增加了客户端的负担。
程序:
<script type="text/javascript" src="http://www.google.com/jsapi"></script> //载入Google的jsapi
<
script type=
"text/javascript"
>
function
slugify(
str)
{
//这个方法应该是将字符转为小写,并把一些特殊字符转为"-"
return
str.toLowerCase
(
)
.replace
(
/[^a-z0-9-_]+/g
,
'-'
)
.replace
(
/^-|-$/g
,
''
)
;
}
google.load
(
"language"
,
"1"
)
;
//载入Google的language Ajax库
function
translate_title(
)
{
//这里就是翻译文章标题了,里面的方法需要jQuery支持,之前要引入jQuery的包,这里就省略了
if
(
$F(
"news_title"
)
.blank
(
)
)
{
alert
(
"请先填写标题"
)
;
return
;
}
$(
"news_slug_url"
)
.value
=
"正在翻译中..."
;
google.language
.translate
(
$F(
"news_title"
)
,
"zh"
,
"en"
,
function
(
result)
{
if
(
!
result.error
)
{
$(
"news_slug_url"
)
.value
=
slugify(
result.translation
)
;
}
}
)
;
}
</
script>
第二种方法就是服务器端来完翻译工作,然后直接在页面。
为了增加灵活性,可以在数据库中增加一个字段,这样可以使用可以让用户自定义URL,没有输入时可使用google翻译得到URL,可控性比较好。
分享到:
相关推荐
google Weather 与 Translation 的API封装,可以用于访问网络,用于翻译与天气获取
Automatically handles bulk translations that exceed the Google Translation API query limit. 这是一款基于nodejs的谷歌翻译插件,由于中国无法访问 google.com,故须对配置进行修改,修改成translate.google....
Google翻译API
GoogleFreeTrans:免费的谷歌翻译API(免费google翻译api)
这个 repo 提供了关于如何使用来自微软、百度和谷歌的翻译 API 和 Python3 的演示。 微软翻译 API 提供了如何使用此 API。 您需要注册一个 Anzure 帐户并申请一个 api 密钥。 这项服务是完全免费的,但有一些配额...
google-translate-api Google Translate的免费和无限API :dollar_banknote: :prohibited: 用于Node.js。产品特点自动语言检测拼写校正语言校正快速可靠–它使用的服务器与使用的服务器相同为什么要用这个叉子? 原始...
此代码使用Google翻译API通过复杂的json解析将数据从输入的json文件转换为任何所需语言的输出json文件,此Spring启动应用程序将获取输入的json文件并将值转换为所有嵌套级别的任何给定语言。需要使用Google api键在...
解决: idea插件translation无法使用谷歌翻译(报错)问题
在网上找在线翻译的方法一直没有很好的,自己用wpf写了一个界面简洁这个可以扩展成所有语言的互译我只弄了中,英,日的互译其他的可以自己添加。
Api-d3.v4-API-Translation.zip,D3.JS 4.X中国石油天然气股份有限公司,一个api可以被认为是多个软件设备之间通信的指导手册。例如,api可用于web应用程序之间的数据库通信。通过提取实现并将数据放弃到对象中,api...
translate 翻译翻译文件(在/ resources / lang下)或lang.json文件提供额外的外观函数Str :: apiTranslate和Str :: apiTranslateWithAttributes 通过使用stichoza / google-translate-php或Google Translate API 或...
google translation api google翻译api,不需要key无任调用次数何限制 install pip install google_translator Useage shell python Translator.py 'hello' > 你好 programmatically t = Translator(Lang.Lang....
SwiftGoogleTranslate 在Swift中使用...初始化首先,您必须生成API密钥才能在使用Google Cloud服务。 然后使用以下代码: SwiftGoogleTranslate. shared . start ( with : " API_KEY_HERE " )使用该框架支持3种端点:
Google行动:GDG示例此示例演示了可在Google Assistant上使用的Google Actions功能,包括本地化( ),对话设计,丰富的响应和API集成( 和 )-使用并部署在。 通常,此操作提供有关。 库有助于以多种语言提供响应,...
Translation API案例和类(TAPICC)计划是一个协作,社区驱动的开源项目,旨在促进本地化行业中的API标准。 该项目的总体目的是提供一个元数据和API框架,用户可以在此基础上进行集成,自动化和互操作性工作。 管治...
python-Risk-Based-Analysis-EDA-Profiling:使用numpy,pandas,matplotlib,seaborn,scipy,scikit-learn和google translation API对银行客户的EDA和客户配置文件进行分析
python脚本,可帮助您为不同层次文件夹中的所有语言创建strings.xml(使用Google Translation API) 用法 句法 python3.7 translator.py <source> 例如, python3.7 translator.py en strings.xml 将在带有各种...
ARM-Translation-4.1–4.3.1.zip Jelly Bean果冻豆 ARM-Translation-4.4–4.4.4.zip KitKat奇巧巧克力 ARM-Translation_5.0–5.1.1.zip Lollipop棒棒糖 ARM-Translation_5.0–5.1.1_2.zip Lollipop棒棒糖 ARM-...
This is a rough translation of the GetTickCount API and includes three different ways to pause an application.
Simple Google Cloud Translation.rar