小编out*_*d3r的帖子

如何防止TinyMCE将CDATA添加到<script>标签并注释掉<style>标签?

让我们把<script>在Web编辑器中允许内容的问题放在一边; 我完全了解他们.

我想要的是允许<style><script>文本内容中的元素,问题在于,每当我这样做时,TinyMCE将它们更改为:

<style><!-- th{width:80px} --></style>
Run Code Online (Sandbox Code Playgroud)

并且脚本内容更改为:

<script>// <![CDATA[
$.address.unbind();
// ]]></script>
Run Code Online (Sandbox Code Playgroud)

在我的TinyMCE init配置中,我有:

valid_elements : "*[*]",
extended_valid_elements : "*[*],script[charset|defer|language|src|type],style",
custom_elements: "*[*],script[charset|defer|language|src|type],style",
valid_children : "+body[style],+body[script]",
verify_html : false,
media_strict: false
Run Code Online (Sandbox Code Playgroud)

但我似乎无法找到一个方法来防止TinyMCE的从禁用<style><script>元素.

html javascript css tinymce

27
推荐指数
2
解决办法
6433
查看次数

Opencv匹配轮廓图像

我想知道比较一组轮廓的最佳策略是什么,实际上是从两张图片中检测到精确边缘的边缘,以便知道哪一对更相似.

我有这个图像:

http://i55.tinypic.com/10fe1y8.jpg

我想知道如何计算出哪一种最适合它:

http://i56.tinypic.com/zmxd13.jpg

(它应该是右边的那个)

无论如何比较整个轮廓?我可以轻松旋转图像,但我不知道使用什么函数来计算右边的参考图像是最合适的.

这是我已经尝试过使用opencv的内容:

matchShapes函数 - 我使用2个灰度图像尝试了这个函数,我总是在每个比较图像中得到相同的结果,并且值似乎是错误的,因为它是0,0002.

所以我对matchShapes有所了解,但我不确定这是正确的假设,是该函数适用于成对的轮廓而不是完整的图像.现在这是一个问题,因为虽然我有想要比较的图像的轮廓,但它们是数百个,我不知道哪些应该"配对".

所以我也尝试将第一个图像的所有轮廓与其他两个轮廓进行迭代比较,但我可能会比较,例如,5的轮廓与两个参考图像的圆形轮廓而不是2个轮廓.

还试过简单的cv :: compare函数和matchTemplate,没有成功.

opencv contour

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

Google App Engine配额是否足够?

我正在考虑尝试使用谷歌应用引擎.

因此,我只是审查服务的配额/限制.

虽然谷歌声明:

所有应用程序都可以使用高达1 GB的存储空间和足够的CPU和带宽,以支持每月大约500万页面浏览量的高效应用程序,完全免费.

请求配额似乎相当低,请求限制中只有1GB的传出带宽就足够了?...或者我没有正确解释?

http://code.google.com/appengine/docs/quotas.html#Requests

google-app-engine bandwidth

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

Servlet上的wait()抛出异常

我在Jboss应用服务器上运行一个Web应用程序,我正在尝试从服务器实现事件库响应.

为了实现这一点,我在servlets类上使用了.wait()和.notify().基本上有一个Ajax请求,servlet wait一直阻塞,直到服务器上有一个事件,如果notify是这样,就会在servlet上触发.

问题是当我在Servlet上等待(1000*60)时,我得到:

Servlet.service() for servlet ProcessesServlet threw exception: java.lang.IllegalMonitorStateException
Run Code Online (Sandbox Code Playgroud)

甚至可以在HttpServlet类上执行wait()吗?

java events servlets

6
推荐指数
1
解决办法
5599
查看次数

来自字符串的Java星期几

我有这个简单的代码:

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date = format.parse("2011-10-29");
calendar.setTime(date);
Log.d("Debug","Day of the week = "+(calendar.get(Calendar.DAY_OF_WEEK)==Calendar.SATURDAY));
Run Code Online (Sandbox Code Playgroud)

十月二十九日是星期六,为什么我会弄错?

java calendar date dayofweek simpledateformat

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

Google OAuth Java客户端和Twitter API

我在使用Google OAuth Java Client调用twitter REST API时遇到问题。我能够正确地执行第一步:

  1. 设置授权URL,
  2. 获取临时令牌,
  3. 生成最终令牌。

然后,OAuth Javadoc会说

通过设置OAuthParameters.token并将OAuthParameters用作HttpRequestInitializer,使用存储的访问令牌授权对受保护资源的HTTP请求。

在此步骤中,我遇到了问题。首先,如果我仅设置OAuthParameters.token值,我将得到一个null异常,因为未设置签名者,所以我现在拥有的是:

    OAuthHmacSigner signer = new OAuthHmacSigner();
    signer.clientSharedSecret=TWITTER_CONSUMER_SECRET;
    String oauthToken = req.getParameter("oauth_token");
    String oauthVerifier = req.getParameter("oauth_verifier");
    OAuthGetAccessToken accessTokenRequest = new OAuthGetAccessToken(TWITTER_ACESS_TOKEN_URL);
    accessTokenRequest.consumerKey=TWITTER_CONSUMER_KEY;
    accessTokenRequest.signer=signer;
    accessTokenRequest.transport=HTTP_TRANSPORT;
    accessTokenRequest.temporaryToken=oauthToken;
    accessTokenRequest.verifier=oauthVerifier;
    OAuthCredentialsResponse credentials = accessTokenRequest.execute();
    String token = credentials.token;
    OAuthParameters params = new OAuthParameters();
    params.token=token;
    params.version="1.0";
    params.consumerKey=TWITTER_CONSUMER_KEY;
    params.signer=signer;
    HttpRequestFactory requestFactory = HTTP_TRANSPORT.createRequestFactory(params);
    HttpResponse twResponse = requestFactory.buildGetRequest(new GenericUrl("https://api.twitter.com/1.1/account/verify_credentials.json")).execute();
Run Code Online (Sandbox Code Playgroud)

结果始终是:

警告:验证错误:无法应对以下任何挑战:{} com.google.api.client.http.HttpResponseException:401 OK {“错误”:[{“消息”:“无法对您进行身份验证”,“代码“:32}]}

如果我尝试使用REST Chrome扩展程序工具通过Twitter OAuth工具提供的Authorization标头,则它可以正常工作,因此这不是帐户问题。当我将其更改为由Google OAuth Java客户端库计算出的Authorization标头值时,它不起作用。

我不明白我在做什么。

解决方案:按照@Arkanon提供的链接中的教程进行操作,我错过了通过以下方式刷新签名者令牌秘密的操作: …

java twitter oauth google-oauth-java-client

5
推荐指数
1
解决办法
2571
查看次数

Linux未找到包含非ASCII字符的文件名错误

简单地说,如果文件名中包含特殊字符,我就无法下载托管在我的Web服务器中的文件,因为我得到了404. 在此输入图像描述

如果我创建一个名为olá.txt的文件,我似乎找不到正确的URL来下载它.我已经尝试了所有可能的方法来下载它:

mydomain.com/olá.txt 
mydomain.com/ol%C3%A1.txt
Run Code Online (Sandbox Code Playgroud)

我总是从Apache Tomcat 7.0.3获得404,但如果我将文件名更改为ola.txt,一切都很好.

我已经添加AddDefaultCharset utf-8到httpd.conf但我仍然有问题.

我的意思是应该可以下载名称中包含非ascii字符的文件,对吧?

更新:我的server.xml:

<Connector URIEncoding="UTF-8" compressableMimeType="text/javascript,text/css" 
     compression="on" compressionMinSize="2048" connectionTimeout="20000"
     noCompressionUserAgents="gozilla, travista" port="8080"
     protocol="HTTP/1.1" redirectPort="8443"/>
Run Code Online (Sandbox Code Playgroud)

更新:

echo -n olá | od -An -tx1 =  6f 6c c3 a1
echo $LANG = en_US.UTF-8
Run Code Online (Sandbox Code Playgroud)

区域:

LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_CTYPE=en_US.UTF-8
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
Run Code Online (Sandbox Code Playgroud)

linux apache ascii

5
推荐指数
1
解决办法
1331
查看次数

OpenCV向量到Mat但不是element-> row

有一种非常简单的方法可以从向量构造Mat ...只需执行以下操作:

vector<int> myVector;
Mat myMatFromVector(myVector,true); //the boolean is to define if you want to copy the data
Run Code Online (Sandbox Code Playgroud)

这个构造函数的问题是每个向量的元素将被放置在Matrix的每一行中.我想要的是我的矢量的每个元素都放在矩阵的每一列中.

As is:
vector<int> = [1,2,3,4]
Matrix = [1;2;3;4]

I want:
vector<int> = [1,2,3,4]
Matrix = [1,2,3,4]
Run Code Online (Sandbox Code Playgroud)

opencv vector matrix

3
推荐指数
1
解决办法
5961
查看次数

Java QName前缀不起作用

我的问题很简单.我正在为需要具有名称空间前缀的SOAP请求添加标头.因此,我正在使用

QName(String namespaceURI,
             String localPart,
             String prefix)
Run Code Online (Sandbox Code Playgroud)

问题是虽然我设置了前缀,但没有添加任何内容,即:

new QName("http://lit.com/schemas/Bobsled", "bob:sessionId")
Run Code Online (Sandbox Code Playgroud)

我明白了 <bob:sessionId xmlns="http://lit.com/schemas/Bobsled">

并使用前缀:

new QName("http://lit.com/schemas/Bobsled", "bob:sessionId","bob")
Run Code Online (Sandbox Code Playgroud)

它应该是完全相同的,它应该是:

<bob:sessionId xmlns:bob="http://lit.com/schemas/Bobsled">
Run Code Online (Sandbox Code Playgroud)

...似乎构造函数中的前缀没有做任何事情!

java xml-namespaces

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

PHP动态字符串更新参考

有什么办法可以做到这一点:

$myVar = 2;
$str = "I'm number:".$myVar;
$myVar = 3;

echo $str;
Run Code Online (Sandbox Code Playgroud)

输出将是:"I'm number: 3";

我想要一个字符串,其中它的一部分就像一个指针,其值将由对引用变量的最后一次修改来设置。

例如,即使我这样做:

 $myStr = "hi";
 $myStrReference = &$myStr;
 $dynamicStr = "bye ".$myStrReference;
 $myStr = "bye";
 echo $dynamicStr;
Run Code Online (Sandbox Code Playgroud)

这将输出“ ”,但由于最后的更改,bye hi我希望它是“ ”。bye bye我认为问题在于,当将指针连接到字符串时,指针的值就是所使用的值。因此,不可能使用连接后设置的值来输出字符串。

有任何想法吗?

更新$dynamicStr将会被附加到 a$biggerString后面,最后$finalResult( $biggerString+$dynamicStr) 将回显给用户。因此,我唯一的选择就是做一些有内部和外部的echo eval($finalResult)事情。$finalResultecho($dynamicStr)$dynamicStr='$myStr'(如劳森建议的)

更新:

$myVar = 2;
$str = function() use (&$myVar) {
    return "I'm number $myVar";
};

$finalStr = …
Run Code Online (Sandbox Code Playgroud)

php string pointers reference

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

为什么document.getElementById的返回对象与$(".class")不同.last().get()?

我不明白为什么差异(使用1.9.1):

document.getElementById("myId").children;
Run Code Online (Sandbox Code Playgroud)

输出DOM元素数组

但如果我这样做:

$("#myId").get().children;
Run Code Online (Sandbox Code Playgroud)

输出undefined 为什么?

jQuery .get()文档说:

.get()方法授予对每个jQuery对象下面的DOM节点的访问权限

那么,如果具有id = myId的DOM节点有子节点,为什么子节点为空?

如果我这样做,$("#myId")[0].children我得到与第一种方法(getElementById)相同的结果.不应该得到()做同样的事情吗?

javascript jquery dom

0
推荐指数
1
解决办法
43
查看次数