小编Tra*_*Guy的帖子

为什么IE8不能识别脚本标签中的type ="application/javascript"?

我开发了一个使用jQuery和Ajax的HTML页面.我的<head>标签中有以下几行:

<script language="javascript" type="application/javascript" src="script/jquery.js"></script>
<script language="javascript" type="application/javascript">
    function someFunction() {
        some code;
    }
</script>
    ...

  later - down in the body tag:
<a href="javascript:someFunction();">click here</a>
Run Code Online (Sandbox Code Playgroud)

它在FF和Chrome中运行得非常好,但是当我点击链接时,它就在IE8中抛出了一个"Object Expected".即使启用了脚本调试器,它也无法到达函数的第一行.
我尝试切换到IE7模式,或IE8兼容模式 - 无济于事.

我运气好,找到一个问题,通过谷歌,其中有人建议改变type<script>标签"text/javascript",现在它在所有3个浏览器上运行.

我的问题是:我做错了什么?是"text/javascript"不是好"application/javascript",或者有更好的(==更正确)解决我的问题?

javascript internet-explorer-8

10
推荐指数
1
解决办法
1万
查看次数

使用Cordova/jQuery-mobile在外部设备浏览器中打开链接

我的应用中有很多链接.我加入rel='external' target='_blank'了他们所有人.

在Ripple模拟器中,或在常规桌面浏览器中,这非常有用.但是在我的Android(JB 4.2.2)上,它会在同一个窗口中打开链接.点击"返回"会带我回到应用程序,但是一切都搞砸了,应用程序无法按计划运行(脚本事件没有反应),直到物理重新加载.

如何确保在设备的浏览器中打开链接?我需要使用Cordova插件吗?

(我正在使用Cordova 2.9.0,jQuery 1.10.1,jQuery Mobile 1.3.1)

javascript jquery-mobile cordova

9
推荐指数
1
解决办法
2万
查看次数

限制对iPhone应用程序的Web服务访问

我正在管理一个依赖于Web服务来提供目录访问的iPhone应用程序的开发.我现在的主要安全问题是有人访问我的Web服务并复制/抓取我的整个目录(现在,它不包含任何专有的 - 但这会改变).

简而言之,我需要限制对我的iPhone应用程序的Web服务访问.虽然该应用程序处于测试阶段,但我可以轻松获取iPhone设备ID并将其限制为仅限5位开发人员.但是当应用程序上线时,我不想(并且不确定我可以合法地)收集设备ID以进行身份​​验证.

我尝试通过用户客户端字符串限制访问 - 但这可能是欺骗性的.

我的下一步是某种共享密码短语 - 但同样,这可以被嗤之以鼻.

还有其他想法吗?

TIA,
盖伊

security iphone web-services limit

8
推荐指数
1
解决办法
788
查看次数

维护VS Test Project中单元测试方法之间的上下文

我想按顺序运行以下单元测试:

  1. 使用随机数创建新客户名称,密码等.
  2. 检索刚刚创建的客户并断言其属性包含相同的随机数
  3. 在同一用户上调用ForgotPassword函数,使用相同的用户名随机数

如清楚所示,我需要生成一次随机数,并在3种测试方法中共享它.
我似乎找不到办法做到这一点.

  • 我想过使用TestContext对象,但是为每个实例创建了它.
  • 我尝试使用ClassInitialize()方法没有帮助,因为它是静态的,因此其他方法无法访问该数字.

知道如何实现我的目标吗?

c# automated-tests unit-testing mstest visual-studio

8
推荐指数
1
解决办法
6739
查看次数

异步调用Node.js中的API模式

构建我的第一个"严肃的"Node.js项目(使用Express).

我需要使用几个REST API调用,收集所有结果,按摩它们并将完整的JSON返回给客户端(HTML5 + AJAX).

  1. 调用API A.
  2. 调用API B.
  3. 再次调用API A(结果来自B)
  4. 将3个调用的处理结果转换为JSON
  5. response.send(结果)

我敢肯定/希望有一个简单的模式,解决方案或模块,我只是没有谷歌正确的:)我也会感谢有关在哪里进行此类操作的意见(在"路线"下?单独的文件?等等.)

谢谢你的时间!

asynchronous node.js express

8
推荐指数
1
解决办法
6085
查看次数

如何从Chrome扩展程序打开mailto:链接?

我有一个名为Shrtr的网址缩短Chrome扩展程序.现在,它允许用户将缩短的URL复制到剪贴板,但在下一个版本中,我添加了使用mailto:链接(即mailto:?subject=<original page title>&body=<short URL>)通过电子邮件发送缩短的URL的功能.

问题是,你不能只是document.location.href = 'mailto...';从扩展分配.以下两种方法对我有用,但两者都有,我最终在浏览器中打开了一个空白选项卡:

方法1: window.open

var wnd = window.open(emailUrl);
setTimeOut(function() {
    wnd.close();
}, 500);
Run Code Online (Sandbox Code Playgroud)

注意在关闭窗口之前需要等待.这有效(即预先填充邮件客户端新消息对话框),但新选项卡仍保持打开状态.

方法2:使用 chrome.tabs

chrome.tabs.create({ url: emailUrl }, function(tab) {
    setTimeOut(function() {
        chrome.tabs.remove(tab.id);
    }, 500);
});
Run Code Online (Sandbox Code Playgroud)

同样,工作 - 但标签保持打开状态.有任何想法吗?

javascript google-chrome google-chrome-extension

8
推荐指数
2
解决办法
3990
查看次数

如何在ES6中获取类函数的引用?

对不起,如果问题太简单了,但我在这里遗漏了一些东西.刚刚切换了一个看起来像的ES5模块:

module.exports = {
  func1: function(a, b) {...},
  func2: function(a, b) {...}
};
Run Code Online (Sandbox Code Playgroud)

对于看起来像这样的ES6类:

export default class {
  func1(a, b) {...}
  func2(a, b) {...}
}
Run Code Online (Sandbox Code Playgroud)

一切都很好:在这两种情况下我都可以export mod from 'module';并且打电话mod.func1(a, b)mod.func2(a, b).

但是,我有一个函数可以调用模块函数来调用:

var caller = function(func, val1, val2) {
  let a = something(val1);
  let b = something(val2);
  return func(a, b);
};
Run Code Online (Sandbox Code Playgroud)

当我打电话时,caller(mod.func1, x, y)我得到了第一个实现所需的结果,但是undefined is not a function第二个实现了.

在两种情况下都打印出mod.func1返回值[Function],但显然从ES6类返回了其他内容.

我做错了什么,如何获得我可以在另一个函数中调用的类函数?

更新:使用第二个实现,我忘了添加实例化代码:

import Mod from 'module'; …
Run Code Online (Sandbox Code Playgroud)

javascript node.js ecmascript-6 es6-module-loader

8
推荐指数
1
解决办法
9049
查看次数

通过oAuth API获取Slack用户名

我正在使用eSlack oAuth API将我的应用程序与Slack集成.按照这些说明,我执行以下操作:

  1. 调用https://slack.com/oauth/authorize传递我的client_id,范围"识别,阅读,发布 - >我得到一个代码
  2. 使用id,secret,code 调用https://slack.com/api/oauth.access - >我获得访问令牌
  3. 我现在想要获取用户的句柄(名称) - >查看user.info文档,我需要提供我的令牌和用户的ID - 我没有.

我应该在哪里/如何获得用户的ID?我错过了什么?

api oauth slack-api

8
推荐指数
1
解决办法
4153
查看次数

关于Heroku SSE请求的H15

我在Heroku上有一个Node.js应用程序.我最近切换了一个长查询来使用SSE(EventSource).虽然它在我的机器上工作得非常快,但我一直在接受Error H15 (Idle connection)我的GET请求.H15描述说我每笔交易允许超过55秒.但我的整个查询不会超过4-5秒.

此外,在阅读完描述之后,我在点击查询后立即返回我的第一个字节(只是一个数字),然后才开始任何繁重的工作 - 而且它仍然不起作用.

我的问题是:

  1. 为了让这件事情继续下去,我需要做些什么?HTTP标头参数?客户端JS方面的东西?我该如何避免H15?
  2. 我想尝试做Heroku不支持的事情吗?我不这么认为,因为我在Heroku上有另一个成功使用EventSource的应用程序(express-eventsource.herokuapp.com,源于github:https://github.com/TravelingTechGuy/express-eventsource)

一如既往,谢谢你的时间.

heroku node.js server-sent-events

7
推荐指数
1
解决办法
3010
查看次数

在节点中将UUID转换为/从二进制转换

我工作的项目切换到了MySQL.我们使用的密钥是UUID字符串(如43d597d7-2323-325a-90fc-21fa5947b9f3),但数据库字段(而不是字符串)被定义为二进制(16) - 16字节无符号二进制.

我知道UUID基本上是一个16字节的二进制文件,但我不知道如何从/转换为二进制数.

我正在使用node-mysql来访问数据库,我尝试使用node-uuid来解析UUID,但这会产生一个整数数组.我也尝试过使用Node的缓冲区,但这只会产生一个缓冲区对象.

如何将UUID字符串转换为适合该字段?如何将我从该字段读取的值转换为UUID?

javascript mysql node.js

7
推荐指数
1
解决办法
4944
查看次数