当前位置: 首页 > 专利查询>微软公司专利>正文

针对web兼容性和互操作性的代码顾问制造技术

技术编号:7786364 阅读:181 留言:0更新日期:2012-09-21 07:24
各种实施例提供调查工具以使得网页内容能得以分析。在至少一些实施例中,在后面被称作“代码顾问”的调查工具允许跟踪应用编程接口(API)的使用。通过在网页脚本执行时跟踪API使用,代码顾问能确定关于网页内容是否存在兼容性和/或互操作性问题。如果确实存在问题,在至少一些实施例中,代码顾问能选择与该问题相关联的一个或多个消息且能提供指南以使得该问题能得以解决。

【技术实现步骤摘要】
针对web兼容性和互操作性的代码顾问
技术介绍
以前,当改变web平台时,开发者不易于识别在其网站上的网页在利用新web平台时是否会遇到问题。因此,开发者不得不读取关于新平台的文档并手动地跟踪代码变化以评估兼容性和互操作性问题。可替换地,开发者不得不运行针对源代码的表达以执行源代码分析。现有工具通常为静态的且常常并不提供对于兼容性问题所需的冲突解决方案。
技术实现思路
提供此
技术实现思路
以便以简化形式介绍概念的选择,这些概念将在下面在具体实施方式中进一步描述。此
技术实现思路
不预期标识所要求保护的主题的关键特征或必要特征,也不预期用于限制所要求保护的主题的范围。各种实施例提供调查工具以使得网页内容能够得以分析。在至少一些实施例中, 以下被称作“代码顾问”的调查工具允许跟踪应用编程接口(API)的使用。通过在网页脚本执行时跟踪API使用,代码顾问能确定关于网页内容是否存在兼容性和/或互操作性问题。如果确实存在问题,那么在至少一些实施例中,代码顾问能选择与该问题相关联的一个或多个消息且能提供指南以使得该问题能得以解决。附图说明在所有附图中使用相同的附图标记来表示同样的特征。图I图示了其中本文所述的各种原理可以根据一个或多个实施例采用的操作环境。图2图示了可以根据一个或多个实施例采用的系统架构。图3图示了根据一个或多个实施例的web浏览器调查工具用户接口。图4图示了根据一个或多个实施例的web浏览器调查工具用户接口的各方面。图5图示了根据一个或多个实施例的web浏览器调查工具用户接口的问题解决方案方面。图6图示了根据一个或多个实施例的web浏览器调查工具用户接口和仿真网页。图7是描述根据一个或多个实施例的方法中的步骤的流程图。图8图示了能用于实施一个或多个实施例的实例系统。具体实施例方式概述 各种实施例提供调查工具,被称作“代码顾问”,以使得网页内容能得以分析。在至少一些实施例中,代码顾问允许跟踪应用编程接口(API)的使用。通过在网页脚本执行时跟踪API使用,代码顾问能确定关于网页内容是否存在任何兼容性和/或互操作性问题。如果确实存在问题,则在至少一些实施例中,代码顾问能选择与该问题相关联的一个或多个消息且能提供指南以使得该问题能得以解决。如本文所使用的,术语“问题”将被理解为以实例而非限制的方式包括与网页与web浏览器交互的方式相关联的兼容性和/或互操作性问题。在至少一些实施例中,如果识别出问题,则可以为用户或开发者显示消息。消息能提供问题的描述使得开发者被告知该问题。作为替代或作为补充,消息能提供旨在减轻问题的可选的修复(fix)选项。该修复选项当被选择时能动态地提供针对该问题的修复。在一些情况下,动态修复能仿真网页预期的行为,因此提 供关于该问题的立即反馈以及在至少一些情况下提供其解决方案。在下文的讨论中,提供标题为“操作环境”的部分且其描述了其中能采用一个或多个实施例的一个环境。之后,标题为“实例实施例”的部分描述了其中可采用代码顾问的实例实施例。接下来,标题为“实例方法”的部分描述了根据一个或多个实施例的方法。最后,标题为“实例系统”的部分描述了能用于实施一个或多个实施例的系统。现考虑其中能实施一个或多个实施例的实例操作环境。操作环境 图I大体上以100图示出根据一个或多个实施例的操作环境。环境100包括计算设备102,计算设备102具有一个或多个处理器104,一个或多个计算机可读存储介质106和驻留在计算机可读存储介质上且可由处理器(一个或多个)执行的一个或多个应用108。计算机可读存储介质可以实例而非限制的方式包括通常与计算设备相关联的所有形式的易失性和非易失性存储器和/或存储介质。这样的介质能包括ROM、RAM、闪存、硬盘、可移动的介质等等。计算设备的一个具体实例在下面在图8中示出和描述。此外,计算设备102包括呈web浏览器110形式的软件应用。可使用任何合适的web浏览器,其实例可从本文件的受让人和其它途径获得。此外,计算机可读存储介质106可包括代码顾问111,代码顾问111如上下文所述那样操作。代码顾问111能实施为独立组件,其可由应用108和浏览器110利用。作为替代或作为补充,代码顾问111能实施为应用108或浏览器110的部分,例如浏览器开发工具。在一个或多个实施例中,代码顾问111能访问或另外地利用位于计算设备102上的模块,例如本地模块112。本地模块112可为与代码顾问和其功能相关联的库模块。作为补充或替代,本地模块112可为被创建以供浏览器110使用的定制模块。模块实例在下文中描述。在操作中,代码顾问模块111结合从网站接收的网页内容执行。代码顾问111能在构成浏览器平台的API上注册一个或多个超驰(override)。这允许代码顾问111有效地“缠绕”API并监视与API及其由特定网页的使用相关联的输入、状态和输出值。因此,当由网页调用特定API时,代码顾问111拦截该调用且将该调用重导向至相关联的模块,例如本地模块112之一。该模块可以知道所述API、它的操作以及它在操作情形下应如何执行。因此,设计模块以检查与API调用相关联的参数和值并评估是否存在兼容性或互操作性问题。API参数和值的检查以及因此是否存在与API相关联的特定问题的确定,使得代码顾问111能够在适合时选择可显示的消息,可以显示该可显示的消息以提供关于该问题的信息并在至少一些实施例中提供其解决方案。此外,环境100包括诸如因特网的网络116和一个或多个网站118,可从这些网站接收内容或向这些网站发送内容。这样的内容可包括网页内容,诸如HTML、脚本等等,其可由代码顾问111如上下文中所述的那样操作。网络116也可表示内联网,计算设备102可通过内联网与一个或多个网络设备120通信。网络设备120可实施为任何网络设备,诸如(以实例而非限制的方式)网络服务器;台式计算机;便携式计算机;手持计算机(例如个人数字助理(PDA))、蜂窝电话等等。网络设备120也可包含可由代码顾问111访问和加载的模块。这些模块可以包括远程模块122和共用模块124。能由第三方开发者创建和共用这些共用模块124。计算设备102可实施为任何合适的计算设备,诸如(以实例而非限制的方式)台式计算机;便携式计算机;手持计算机(例如个人数字助理(PDA))、蜂窝电话等等。已描述了实例操作环境,现考虑如何根据一个或多个实施例执行问题检测的讨论。实例实施例 图2大体上以200图示出根据一个或多个实施例的实例架构。在此实施例中,由代理204接收网页HTML 202。代理204包括注入器206,注入器206被配置成在网页HTML 202开始处插入一个或多个脚本元素,其组合由脚本元素/网页HTML 208图解地表示。插入的脚本元素可为任何合适类型的脚本元素,包括(以实例而非限制的方式)Java脚本元素等等。脚本元素(一个或多个)使得附加的代码能够由浏览器在执行网页HTML 202之前来执行。在另一实施例中,脚本元素(一个或多个)可与网页HTML同时执行。在图示和描述的实施例中,浏览器210包括加载器模块212、注册模块214、代码顾问216和一个或多个模块222。在一个实施例中,加载器模块212接收脚本元素/网页HTML 208。在接收脚本元素本文档来自技高网...

【技术保护点】

【技术特征摘要】
2011.01.20 US 13/010,5521.一种计算机实施的方法,包括 从网页接收(700)应用编程接ロ(API)调用; 通过使用代码组件来确定(702)关于API调用是否存在问题,所述代码组件缠绕相关联的API且被配置成处理API调用且识别与所述API调用相关联的一个或多个问题;以及对于确定存在问题做出响应,选择(704)与所述问题相关联的可显示消息。2.根据权利要求I所述的计算机实施的方法,其中,所述可显示消息包括 错误消息, 警告消息,或者 信息消息。3.根据权利要求I所述的计算机实施的方法,还包括 显示所述可显示消息;以及 提示用户采取行动。4.根据权利要求3所述的计算机实施的方法,其中所述行动包括 选择修复选项来允许显示仿真行为,或者, 选择调试选项。5.根据权利要求4所述的计算机实施的方法,其中,所述仿真行为包括接收调用的先前版本的浏览器的遗留行为。6.根据权...

【专利技术属性】
技术研发人员:MA西尔比AM罗斯JA穆尔
申请(专利权)人:微软公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1