Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
John McEleney
/
casperjs
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
Commit
f6b77402
...
f6b77402d788a84126b8b56d41de96b6e1e68549
authored
2012-07-19 14:46:43 +0200
by
oncletom
Committed by
Nicolas Perriault
2012-10-18 09:43:58 +0200
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
http module
1 parent
094ed5ca
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
69 additions
and
29 deletions
modules/casper.js
modules/http.js
modules/casper.js
View file @
f6b7740
...
...
@@ -1628,34 +1628,6 @@ Casper.extend = function(proto) {
exports
.
Casper
=
Casper
;
/*
* Building an Array subclass
*/
function
responseHeaders
(){}
responseHeaders
.
prototype
=
new
Array
;
/**
* Retrieves a given header based on its name
*
* @param String name A case-insensitive response header name
* @return mixed A header string or `null` if not found
*/
responseHeaders
.
prototype
.
get
=
function
get
(
name
){
"use strict"
;
var
headerValue
=
null
;
name
=
name
.
toLowerCase
();
this
.
some
(
function
(
header
){
if
(
header
.
name
.
toLowerCase
()
===
name
){
headerValue
=
header
.
value
;
return
true
;
}
});
return
headerValue
;
};
/**
* Creates a new WebPage instance for Casper use.
*
...
...
@@ -1750,7 +1722,7 @@ function createPage(casper) {
return
casper
.
filter
(
'page.prompt'
,
message
,
value
);
};
page
.
onResourceReceived
=
function
onResourceReceived
(
resource
)
{
re
source
.
headers
.
__proto__
=
responseHeaders
.
prototype
;
re
quire
(
'http'
).
augmentResponse
(
resource
)
;
casper
.
emit
(
'resource.received'
,
resource
);
if
(
utils
.
isFunction
(
casper
.
options
.
onResourceReceived
))
{
...
...
modules/http.js
0 → 100644
View file @
f6b7740
/*!
* Casper is a navigation utility for PhantomJS.
*
* Documentation: http://casperjs.org/
* Repository: http://github.com/n1k0/casperjs
*
* Copyright (c) 2011-2012 Nicolas Perriault
*
* Part of source code is Copyright Joyent, Inc. and other Node contributors.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included
* in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
*/
/*
* Building an Array subclass
*/
function
responseHeaders
(){}
responseHeaders
.
prototype
=
new
Array
;
/**
* Retrieves a given header based on its name
*
* @param String name A case-insensitive response header name
* @return mixed A header string or `null` if not found
*/
responseHeaders
.
prototype
.
get
=
function
get
(
name
){
"use strict"
;
var
headerValue
=
null
;
name
=
name
.
toLowerCase
();
this
.
some
(
function
(
header
){
if
(
header
.
name
.
toLowerCase
()
===
name
){
headerValue
=
header
.
value
;
return
true
;
}
});
return
headerValue
;
};
/**
* Augment the response with proper prototypes
*
* @param mixed response Phantom response or undefined (generally with local files)
*/
exports
.
augmentResponse
=
function
(
response
)
{
if
(
response
===
undefined
)
return
;
response
.
headers
.
__proto__
=
responseHeaders
.
prototype
;
};
\ No newline at end of file
Please
register
or
sign in
to post a comment