我是angular.js的新手,我正在尝试为请求添加一些标头:
var config = {headers: {
'Authorization': 'Basic d2VudHdvcnRobWFuOkNoYW5nZV9tZQ==',
'Accept': 'application/json;odata=verbose'
}
};
$http.get('https://www.example.com/ApplicationData.svc/Malls(1)/Retailers', config).success(successCallback).error(errorCallback);
Run Code Online (Sandbox Code Playgroud)
我查看了所有文档,在我看来这应该是正确的.
当我在网址中使用本地文件时$http.get,我会在Chrome的网络标签上看到以下HTTP请求:
GET /app/data/offers.json HTTP/1.1
Host: www.example.com
Connection: keep-alive
Cache-Control: max-age=0
If-None-Match: "0f0abc9026855b5938797878a03e6889"
Authorization: Basic Y2hhZHN0b25lbWFuOkNoYW5nZV9tZQ==
Accept: application/json;odata=verbose
X-Requested-With: XMLHttpRequest
If-Modified-Since: Sun, 24 Mar 2013 15:58:55 GMT
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22
X-Testing: Testing
Referer: http://www.example.com/app/index.html
Accept-Encoding: gzip,deflate,sdch
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Run Code Online (Sandbox Code Playgroud)
如您所见,两个标头都已正确添加.但是当我将URL更改为$http.get上面显示的URL时(除了使用真实地址,而不是example.com),我得到:
OPTIONS /ApplicationData.svc/Malls(1) HTTP/1.1
Host: www.datahost.net
Connection: keep-alive
Access-Control-Request-Method: GET
Origin: http://mpon.site44.com
User-Agent: …Run Code Online (Sandbox Code Playgroud) 我正在使用一个脚本(我最初没有创建)从HTML页面生成pdf文件.问题是现在需要花费很长时间,比如1-2分钟来处理.据说这最初工作正常,但在过去几周内已经放缓.
该脚本调用file_get_contentsphp脚本,然后将结果输出到服务器上的HTML文件中,并在该文件上运行pdf生成器应用程序.
我似乎已经将问题缩小到file_get_contents完整网址上的呼叫,而不是本地路径.
我用的时候
$content = file_get_contents('test.txt');
Run Code Online (Sandbox Code Playgroud)
它几乎瞬间处理.但是,如果我使用完整的网址
$content = file_get_contents('http://example.com/test.txt');
Run Code Online (Sandbox Code Playgroud)
处理过程需要30-90秒.
它不仅限于我们的服务器,访问任何外部网址时都很慢,例如http://www.google.com.我相信该脚本会调用完整的URL,因为如果您在本地调用该文件,则必须使用查询字符串变量.
我也试过了fopen,readfile而且curl,他们都同样很慢.关于在哪里寻找解决此问题的任何想法?
我对jQuery有点新意,请原谅我密集.我想<td>通过Chrome的JS控制台选择特定页面上的所有元素:
$('td')
Run Code Online (Sandbox Code Playgroud)
然而,当我这样做时,我得到以下输出:
<td>Apples</td>
Run Code Online (Sandbox Code Playgroud)
是不是jQuery应该返回带有<td>标记的元素数组?为什么我只看到符合此标准的第一个元素?
这是有问题的网站:http://www.w3schools.com/html/html_tables.asp
编辑:我想补充一点,当我在Chrome控制台中输入一个jQuery函数时,我没有得到一个jQuery对象.我得到一个简单的HTML元素.我的Chrome设置/配置方式肯定有问题.
我在一个单独的JavaScript文件中有一个函数,我想在React组件中调用 - 我怎样才能实现这个目的?
我正在尝试创建幻灯片,而且slideshow.js,我有这个函数可以增加当前的幻灯片索引,如下所示:
function plusSlides(n) {
showSlides(slideIndex += n);
}
Run Code Online (Sandbox Code Playgroud)
在Homepage.jsx,我有一个"下一步"按钮,应该plusSlides从slideshow.js点击时调用,如下所示:
class NextButton extends React.Component {
constructor() {
super();
this.onClick = this.handleClick.bind(this);
}
handleClick (event) {
script.plusSlides(1); // I don't know how to do this properly...
}
render() {
return (
<a className="next" onClick={this.onClick}>
❯
</a>
);
}
}
Run Code Online (Sandbox Code Playgroud) 我想知道是否有一种方法可以直接通过Java执行类似查询的mongo,即我们将mongoDB查询作为字符串提供给Java驱动程序中的函数,用于mongoDB作为String对象并返回DBCursor对象.就像是:
import com.mongodb.*;
import java.net.UnknownHostException;
public class ExecuteQuery {
public static void main(String args[]){
try{
Mongo m = new Mongo();
DB db = m.getDB("test");
DBCollection coll = db.getCollection("first");
DBObject doc = new BasicDBObject();
DBCursor cur =coll.executeQuery("db.first.find({"username":"joe"})");
}
catch(UnknownHostException e){
System.out.println(e);
}
catch (MongoException.DuplicateKey e) {
System.out.println("Exception Caught" + e);
}
}
}
Run Code Online (Sandbox Code Playgroud)
注意:executeQuery()不是内置函数.它仅用于演示目的.那么,java api中是否有一个将json字符串转换为BasicDBObject实例的函数?谢谢.
我有一个功能,我想执行一些服务器端验证,但我不知道如何做到这一点?我应该看看的任何建议.在如何做的文档中没有什么?
我想我误解了用xmlhttprequest管理cookies.我有一个响应的服务器XMLHttpRequest在JavaScript做,我的服务器返回Allow-Control-Access-Origin,Access-Control-Allow-Headers,Access-Control-Expose-Headers并Access-Control-Allow-Credentials用正确的值标题.
我正在使用javascript在服务器上进行摘要身份验证,没有问题,我收到WWW-Authenticate来自服务器的标题,我处理并向服务器发送带有所有摘要响应的授权标头,一切正常.问题是,当摘要挑战成功时,我的服务器返回一个Set-Cookie标头,我必须得到它并添加到我的所有xhr请求的其余部分.浏览器(使用Chromium和Chrome)不允许我访问标题:
xhr.getResponseHeader("Set-Cookie");
Run Code Online (Sandbox Code Playgroud)
好吧,在XMLHTTPREQUEST Level 2中它说:"返回响应中的所有头文件,除了那些字段名称为Set-Cookie或Set-Cookie2的头文件"好的,所以我不能接受它,但有什么办法?使用Chrome Api进行Cookie(目前我还没有注意到它的注意事项),但我希望以标准的方式做到可行.随着:
xhr.withCredentials = true;
Run Code Online (Sandbox Code Playgroud)
意味着浏览器自动获取set-cookie并发送cookie头?
我正在尝试将Web引用添加到Web服务(http://jira.atlassian.com/rpc/soap/jirasoapservice-v2?wsdl),但是"添加Web引用"在我的VS中显示为灰色.所以我添加了Web服务链接作为添加服务引用,VS识别了Web服务,但现在我遇到了显示正确类的问题.(注意:对于Windows Phone项目,"添加Web引用"显示为灰色,但对于常规控制台应用程序,它不会显示为灰色.当我添加Web服务作为Web引用时,我可以访问JiraSoapServiceService类.所以我可以这样做:
//jiraWS is name of web service
jiraWS.JiraSoapServiceService jira = new JiraSoapServiceService();
Run Code Online (Sandbox Code Playgroud)
但是,当我添加Web服务作为服务引用时,我无法访问JiraSoapServiceService类,我需要访问此类,以便调用Web方法.
有谁知道我怎么解决这个问题?
我知道url中不允许双引号字符,它被编码为%22,这是通过utf-8编码完成的.但是,如果我构建一个不执行url编码的浏览器并且使用双引号本身进行查询会发生什么,因为它在utf-8编码方案中是允许的.例如:www.google.com/"a".此外,当遇到双引号时,服务器中的url解析脚本会发生什么?
javascript ×4
mongodb ×2
php ×2
.net ×1
angularjs ×1
c# ×1
cookies ×1
cors ×1
firebase ×1
html ×1
http-headers ×1
java ×1
jquery ×1
json ×1
mongo-java ×1
reactjs ×1
setcookie ×1
validation ×1
web-scraping ×1
web-services ×1