本文整理汇总了C++中HTMLForm类的典型用法代码示例。如果您正苦于以下问题:C++ HTMLForm类的具体用法?C++ HTMLForm怎么用?C++ HTMLForm使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了HTMLForm类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: submitLoginPage
void submitLoginPage(HTTPSClientSession& clientSession, NameValueCollection& cookies)
{
HTTPRequest request(HTTPRequest::HTTP_POST, "/royalgreenwich/sessions", HTTPMessage::HTTP_1_1);
request.setCookies(cookies);
HTTPResponse response;
HTMLForm loginForm;
loginForm.add("barcode", "28028005913354");
loginForm.add("pin", "3347");
loginForm.prepareSubmit(request);
std::ostream& ostr = clientSession.sendRequest(request);
loginForm.write(ostr);
std::istream& rs = clientSession.receiveResponse(response);
int statusCode = response.getStatus();
poco_information_f1(logger(), "Status %d", statusCode);
std::vector<HTTPCookie> newCookies;
response.getCookies(newCookies);
for (HTTPCookie cookie : newCookies)
{
poco_information_f1(logger(), "Cookie %s", cookie.toString());
if (cookies.has(cookie.getName()))
{
cookies.set(cookie.getName(), cookie.getValue());
}
else
{
cookies.add(cookie.getName(), cookie.getValue());
}
}
}
开发者ID:gazzyt,项目名称:HTMLRegex,代码行数:33,代码来源:HTMLRegex.cpp示例2: main
int main(int argc, char **argv) {
// using `web` as provider
URI uri("https://yboss.yahooapis.com/ysearch/web?q=cat");
// init the creds, I think the empty token and token secret are important
OAuth10Credentials creds(
"dj0yJmk9eGx5RzFQOVAwcDZpJmQ9WVdrOWVVUkhWamhwTkdVbWNHbzlNQS0tJnM9Y29uc3VtZXJzZWNyZXQmeD0wYw--",
"2bf8a4682c4948fb4f7add9598eef5f86b57cf93", "", "");
HTTPRequest request(HTTPRequest::HTTP_GET, uri.getPathEtc());
// put the `q` as param
HTMLForm params;
params.set("q", "cat");
creds.authenticate(request, uri, params);
std::string auth = request.get("Authorization");
std::cout << auth << std::endl;
const Context::Ptr context = new Context(Context::CLIENT_USE, "", "", "", Context::VERIFY_NONE, 9, false, "ALL:!ADH:!LOW:!EXP:!MD5:@STRENGTH");
HTTPSClientSession session(uri.getHost(), uri.getPort(), context);
session.sendRequest(request);
HTTPResponse response;
std::istream& rs = session.receiveResponse(response);
std::cout << response.getStatus() << " " << response.getReason() << std::endl;
StreamCopier::copyStream(rs, std::cout);
return 0;
}
开发者ID:diorahman,项目名称:poco-yahoo-boss-request-example,代码行数:29,代码来源:main.cpp示例3: Form
HTMLEventStatus HTMLInputReset::DefaultEvent(HTMLEvent *pEvent)
{
HTMLEvent e;
HTMLForm *pForm = Form();
HTMLDocument *pDoc = GetDocument();
int x = pEvent->data.position.x, y = pEvent->data.position.y;
WebKey key;
WEBC_DEBUG_ReceiveEvent(this, pEvent);
switch (pEvent->type)
{
case HTML_EVENT_CLICK:
if (pForm)
{
e.type = HTML_EVENT_RESET;
e.data.position.x = x;
e.data.position.y = y;
e.elem = (HELEMENT_HANDLE)this;
return (pForm->Event(&e));
}
return (HTML_EVENT_STATUS_DONE);
case HTML_EVENT_KEYDOWN:
{
HTMLEventStatus retval = DefaultInputKeyHandler(pEvent);
if (retval != HTML_EVENT_STATUS_CONTINUE)
{
return (retval);
}
break;
}
case HTML_EVENT_KEYPRESS:
key = pEvent->data.key;
if (pForm && key == '\r')
{
e.type = HTML_EVENT_RESET;
e.data.position.x = x;
e.data.position.y = y;
e.elem = (HELEMENT_HANDLE)this;
HTMLEventStatus status = pForm->Event(&e);
if (status == HTML_EVENT_STATUS_HALT)
{
return (status);
}
return (HTML_EVENT_STATUS_CONTINUE);
}
break;
default:
// ignore other event types
break;
}
return (HTMLInputButton::DefaultEvent(pEvent));
}
开发者ID:peteratebs,项目名称:webcwebbrowser,代码行数:58,代码来源:hreset.cpp示例4: context
void BundleInstallHandler::run()
{
ServiceRef::Ptr pInstallerRef = context()->registry().findByName(BundleInstallerService::SERVICE_NAME);
AutoPtr<BundleInstallerService> pInstaller = pInstallerRef->castedInstance<BundleInstallerService>();
HTMLForm form;
InstallPartHandler partHandler(form, pInstaller);
form.load(request(), request().stream(), partHandler);
std::string title;
std::string backLink;
std::string backLinkTitle;
std::string symbolicName = form.get("symbolicName", "");
if (!symbolicName.empty())
{
Bundle::Ptr pBundle = context()->findBundle(symbolicName);
title = text("upgradeBundle");
title += ": ";
title += symbolicName;
backLink = bundlePath(symbolicName);
backLinkTitle = text("bundle");
backLinkTitle += ": ";
backLinkTitle += pBundle->name();
}
else
{
title = text("installBundle");
backLink = bundle()->properties().getString("web.path");
backLinkTitle = text("installedBundles");
}
beginPage(title, backLink, backLinkTitle);
if (partHandler.installed())
{
templat().clear();
templat().setString("symbolicName", partHandler.bundle()->symbolicName());
templat().setString("name", partHandler.bundle()->name());
sendTemplate("html.installComplete");
beginList();
item(text("id"), NumberFormatter::format(partHandler.bundle()->id()));
item(text("symbolicName"), partHandler.bundle()->symbolicName());
item(text("version"), partHandler.bundle()->version().toString());
item(text("path"), partHandler.bundle()->path());
endList();
}
else if (symbolicName.empty())
{
sendTemplate("html.installForm");
}
else
{
templat().clear();
templat().setString("symbolicName", symbolicName);
sendTemplate("html.upgradeForm");
}
endPage();
}
开发者ID:JoneXie,项目名称:macchina.io,代码行数:57,代码来源:BundleInstallHandler.cpp示例5: req
void HTMLFormTest::testSubmit2()
{
HTMLForm form;
form.set("field1", "value1");
form.set("field2", "value 2");
form.set("field3", "value=3");
form.set("field4", "value&4");
HTTPRequest req("POST", "/form.cgi");
form.prepareSubmit(req);
assert (req.getContentType() == HTMLForm::ENCODING_URL);
}
开发者ID:119,项目名称:vdc,代码行数:12,代码来源:HTMLFormTest.cpp示例6: testWriteUrl
void HTMLFormTest::testWriteUrl()
{
HTMLForm form;
form.set("field1", "value1");
form.set("field2", "value 2");
form.set("field3", "value=3");
form.set("field4", "value&4");
form.set("field5", "value+5");
std::ostringstream ostr;
form.write(ostr);
std::string s = ostr.str();
assert (s == "field1=value1&field2=value%202&field3=value%3D3&field4=value%264&field5=value%2B5");
}
开发者ID:119,项目名称:vdc,代码行数:14,代码来源:HTMLFormTest.cpp示例7: istr
void HTMLFormTest::testFieldLimitMultipart()
{
std::istringstream istr(
"\r\n"
"--MIME_boundary_0123456789\r\n"
"Content-Disposition: form-data; name=\"field1\"\r\n"
"\r\n"
"value1\r\n"
"--MIME_boundary_0123456789\r\n"
"Content-Disposition: form-data; name=\"field2\"\r\n"
"\r\n"
"value 2\r\n"
"--MIME_boundary_0123456789\r\n"
"Content-Disposition: form-data; name=\"field3\"\r\n"
"\r\n"
"value=3\r\n"
"--MIME_boundary_0123456789\r\n"
"Content-Disposition: form-data; name=\"field4\"\r\n"
"\r\n"
"value&4\r\n"
"--MIME_boundary_0123456789\r\n"
"Content-Disposition: file; name=\"attachment1\"; filename=\"att1.txt\"\r\n"
"Content-Type: text/plain\r\n"
"\r\n"
"This is an attachment\r\n"
"--MIME_boundary_0123456789--\r\n"
);
HTTPRequest req("POST", "/form.cgi");
req.setContentType(HTMLForm::ENCODING_MULTIPART + "; boundary=\"MIME_boundary_0123456789\"");
StringPartHandler sah;
HTMLForm form;
form.setFieldLimit(3);
try
{
form.load(req, istr, sah);
fail("field limit violated - must throw");
}
catch (Poco::Net::HTMLFormException&)
{
}
}
开发者ID:119,项目名称:vdc,代码行数:41,代码来源:HTMLFormTest.cpp示例8: ofLogWarning
//-------------------------------------------------------------
string API::doUpload( string image ){
if ( !bAuthenticated ){
ofLogWarning( "Not authenticated! Please call authenticate() with proper api key and secret" );
return "";
} else if ( currentPerms != FLICKR_WRITE ){
ofLogWarning( "You do not have proper permissions to upload! Please call authenticate() with permissions of ofxFlickr::FLICKR_WRITE" );
return "";
}
map<string,string> args;
args["api_key"] = api_key;
args["auth_token"] = auth_token;
string result;
FilePartSource * fps = new FilePartSource(image, "image/jpeg");
try
{
// prepare session
const URI uri( "https://" + api_base );
HTTPSClientSession session( uri.getHost(), uri.getPort() );
HTTPRequest req(HTTPRequest::HTTP_POST, "/services/upload/", HTTPMessage::HTTP_1_0);
req.setContentType("multipart/form-data");
// setup form
HTMLForm form;
form.set("api_key", api_key);
form.set("auth_token", auth_token);
form.set("api_sig", apiSig( args ));
form.setEncoding(HTMLForm::ENCODING_MULTIPART);
form.addPart("photo", fps);
form.prepareSubmit(req);
std::ostringstream oszMessage;
form.write(oszMessage);
std::string szMessage = oszMessage.str();
req.setContentLength((int) szMessage.length() );
//session.setKeepAlive(true);
// send form
ostream & out = session.sendRequest(req) << szMessage;
// get response
HTTPResponse res;
cout << res.getStatus() << " " << res.getReason() << endl;
// print response
istream &is = session.receiveResponse(res);
StreamCopier::copyToString(is, result);
}
catch (Exception &ex)
{
cerr << "error? " + ex.displayText() <<endl;
}
string photoid;
ofxXmlSettings xml;
xml.loadFromBuffer(result);
xml.pushTag("rsp");{
photoid = xml.getValue("photoid", "");
}; xml.popTag();
return photoid;
}
开发者ID:robotconscience,项目名称:ofxFlickr,代码行数:70,代码来源:ofxFlickr.cpp示例9: WEBC_DEBUG_ReceiveEvent
HTMLEventStatus HTMLInputPassword::DefaultEvent(HTMLEvent *pEvent) // tbd
{
WEBC_UINT8 onlyBox = 1;
WEBC_UINT8 hasSubmit = 0;
HTMLElement *pElem = 0;
HTMLInput *pSubmit = 0;
vector_iterator it;
WEBC_DEBUG_ReceiveEvent(this, pEvent);
switch (pEvent->type)
{
case HTML_EVENT_CHANGE:
break;
case HTML_EVENT_EDIT:
{
HTMLForm *pForm = Form();
if (pForm)
{
pElem = (HTMLElement*)ObjectListGetFirst(pForm->GetFieldVector(), &it);
while (pElem)
{
if ( (pElem->Type() == HTML_EDIT_STR_ELEMENT ||
pElem->Type() == HTML_EDITBOX_ELEMENT)
&& pElem != this)
{
onlyBox = 0;
break;
}
if (pElem->Type() == HTML_BUTTON_ELEMENT
&& !hasSubmit)
{
hasSubmit = 1;
pSubmit = (HTMLInput *)pElem;
}
pElem = (HTMLElement*)ObjectListGetNext(&it);
}
if (pSubmit && onlyBox)
{
HTMLEvent e;
e.type = HTML_EVENT_SUBMIT;
e.data.position.x = pEvent->data.position.x;
e.data.position.y = pEvent->data.position.y;
e.elem = (HELEMENT_HANDLE)pSubmit;
return (pForm->Event(&e));
}
}
break;
}
case HTML_EVENT_FOCUS:
{
HTMLSetFlagFinder f(HELEM_FLAG_HAS_FOCUS, 1);
FindElement(&f);
SetFlag(HINPUT_FLAG_ACTIVE);
Update(0,0);
break;
}
case HTML_EVENT_UNFOCUS:
{
HTMLSetFlagFinder f(HELEM_FLAG_HAS_FOCUS, 0);
FindElement(&f);
ClearFlag(HINPUT_FLAG_ACTIVE);
Update(0,0);
break;
}
case HTML_EVENT_KEYDOWN:
{
HTMLEventStatus retval = DefaultInputKeyHandler(pEvent);
if (retval != HTML_EVENT_STATUS_CONTINUE)
{
return (retval);
}
switch (pEvent->data.key)
{
case WGK_LNDN:
case WGK_LNUP:
case WGK_LEFT:
case WGK_RIGHT:
pEvent->flags |= HTML_EVENT_FLAG_CANCEL_BUBBLE;
break;
}
break;
}
default:
break;
}
return (HTMLInput::DefaultEvent(pEvent));
}
开发者ID:peteratebs,项目名称:webcwebbrowser,代码行数:94,代码来源:hpasswd.cpp示例10: uri
// ----------------------------------------------------------------------
ofxHttpResponse ofxHttpUtils::doPostForm(ofxHttpForm & form){
ofxHttpResponse response;
try{
URI uri( form.action.c_str() );
std::string path(uri.getPathAndQuery());
if (path.empty()) path = "/";
//HTTPClientSession session(uri.getHost(), uri.getPort());
HTTPRequest req(HTTPRequest::HTTP_POST, path, HTTPMessage::HTTP_1_1);
if(auth.getUsername()!="") auth.authenticate(req);
if(sendCookies){
for(unsigned i=0; i<cookies.size(); i++){
NameValueCollection reqCookies;
reqCookies.add(cookies[i].getName(),cookies[i].getValue());
req.setCookies(reqCookies);
}
}
for (unsigned int i = 0; i < form.headerIds.size(); ++i) {
const std::string name = form.headerIds[i].c_str();
const std::string val = form.headerValues[i].c_str();
req.set(name, val);
}
HTTPResponse res;
HTMLForm pocoForm;
// create the form data to send
if(form.formFiles.size()>0) {
pocoForm.setEncoding(HTMLForm::ENCODING_MULTIPART);
}
else {
pocoForm.setEncoding(HTMLForm::ENCODING_URL);
}
// form values
for(unsigned i=0; i<form.formIds.size(); i++){
const std::string name = form.formIds[i].c_str();
const std::string val = form.formValues[i].c_str();
pocoForm.set(name, val);
}
map<string,string>::iterator it;
for(it = form.formFiles.begin(); it!=form.formFiles.end(); it++){
string fileName = it->second.substr(it->second.find_last_of('/')+1);
ofLogVerbose("ofxHttpUtils") << "adding file: " << fileName << " path: " << it->second;
pocoForm.addPart(it->first,new FilePartSource(it->second));
}
pocoForm.prepareSubmit(req);
ofPtr<HTTPSession> session;
istream * rs;
if(uri.getScheme()=="https"){
HTTPSClientSession * httpsSession = new HTTPSClientSession(uri.getHost(), uri.getPort());//,context);
httpsSession->setTimeout(Poco::Timespan(20,0));
pocoForm.write(httpsSession->sendRequest(req));
rs = &httpsSession->receiveResponse(res);
session = ofPtr<HTTPSession>(httpsSession);
}else{
HTTPClientSession * httpSession = new HTTPClientSession(uri.getHost(), uri.getPort());
httpSession->setTimeout(Poco::Timespan(20,0));
pocoForm.write(httpSession->sendRequest(req));
rs = &httpSession->receiveResponse(res);
session = ofPtr<HTTPSession>(httpSession);
}
response = ofxHttpResponse(res, *rs, form.action);
if(sendCookies){
cookies.insert(cookies.begin(),response.cookies.begin(),response.cookies.end());
}
if(response.status>=300 && response.status<400){
Poco::URI uri(req.getURI());
uri.resolve(res.get("Location"));
response.location = uri.toString();
}
ofNotifyEvent(newResponseEvent, response, this);
}catch (Exception& exc){
ofLogError("ofxHttpUtils") << "ofxHttpUtils error doPostForm -- " << form.action.c_str();
//ofNotifyEvent(notifyNewError, "time out", this);
// for now print error, need to broadcast a response
ofLogError("ofxHttpUtils") << exc.displayText();
response.status = -1;
response.reasonForStatus = exc.displayText();
ofNotifyEvent(newResponseEvent, response, this);
}
return response;
}
开发者ID:arturoc,项目名称:ofxHttpUtils,代码行数:100,代码来源:ofxHttpUtils.cpp示例11: uri
ofxHttpResponse ofxURLFileLoader::handleRequest(ofxHttpRequest request) {
try {
URI uri(request.url);
std::string path(uri.getPathAndQuery());
if (path.empty()) path = "/";
HTTPClientSession session(uri.getHost(), uri.getPort());
string method;
switch (request.method) {
case HTTP_METHOD_GET:
method = HTTPRequest::HTTP_GET;
break;
case HTTP_METHOD_POST:
method = HTTPRequest::HTTP_POST;
break;
default:
method = HTTPRequest::HTTP_GET;
break;
}
HTTPRequest req(method, path, HTTPMessage::HTTP_1_1);
session.setTimeout(Poco::Timespan(20,0));
if (!request.cookies.empty()) {
NameValueCollection mvc;
// cout << "request cookies:" << endl;
for (vector<pair<string,string> >::iterator iter = request.cookies.begin();iter!=request.cookies.end();iter++) {
mvc.add(iter->first, iter->second);
// cout << iter->first << ": " << iter->second << endl;
}
req.setCookies(mvc);
}
if (request.nvc.empty() & request.files.empty()) {
session.sendRequest(req);
} else {
HTMLForm pocoForm;
// create the form data to send
if(request.files.size()>0)
pocoForm.setEncoding(HTMLForm::ENCODING_MULTIPART);
else
pocoForm.setEncoding(HTMLForm::ENCODING_URL);
// form values
for(unsigned i=0; i<request.nvc.size(); i++){
const std::string name = request.nvc[i].first.c_str();
const std::string val = request.nvc[i].second.c_str();
pocoForm.set(name, val);
}
map<string,string>::iterator it;
for(it = request.files.begin(); it!=request.files.end(); it++){
string fileName = it->second.substr(it->second.find_last_of('/')+1);
cout << "adding file: " << fileName << " path: " << it->second << endl;
pocoForm.addPart(it->first,new FilePartSource(it->second));
}
pocoForm.prepareSubmit(req);
pocoForm.write(session.sendRequest(req));
}
HTTPResponse res;
istream& rs = session.receiveResponse(res);
vector<HTTPCookie> pocoCookies;
res.getCookies(pocoCookies);
vector<pair<string,string> > cookies;
// res.write(cout);
for (vector<HTTPCookie>::iterator iter=pocoCookies.begin();iter!=pocoCookies.end();iter++) {
cookies.push_back(make_pair(iter->getName(), iter->getValue()));
}
if(!request.saveTo){
return ofxHttpResponse(request,cookies,rs,res.getStatus(),res.getReason());
}else{
ofFile saveTo(request.name,ofFile::WriteOnly);
char aux_buffer[1024];
rs.read(aux_buffer, 1024);
std::streamsize n = rs.gcount();
while (n > 0){
// we resize to size+1 initialized to 0 to have a 0 at the end for strings
saveTo.write(aux_buffer,n);
if (rs){
rs.read(aux_buffer, 1024);
n = rs.gcount();
}
else n = 0;
//.........这里部分代码省略.........
开发者ID:roikr,项目名称:openFrameworks007,代码行数:101,代码来源:ofxURLFileLoader.cpp示例12: processQuery
void HTTPHandler::processQuery(
Poco::Net::HTTPServerRequest & request,
HTMLForm & params,
Poco::Net::HTTPServerResponse & response,
Output & used_output)
{
Context context = server.context();
context.setGlobalContext(server.context());
CurrentThread::QueryScope query_scope(context);
LOG_TRACE(log, "Request URI: " << request.getURI());
std::istream & istr = request.stream();
/// Part of the query can be passed in the 'query' parameter and the rest in the request body
/// (http method need not necessarily be POST). In this case the entire query consists of the
/// contents of the 'query' parameter, a line break and the request body.
std::string query_param = params.get("query", "");
if (!query_param.empty())
query_param += '\n';
/// The user and password can be passed by headers (similar to X-Auth-*),
/// which is used by load balancers to pass authentication information.
std::string user = request.get("X-ClickHouse-User", "");
std::string password = request.get("X-ClickHouse-Key", "");
std::string quota_key = request.get("X-ClickHouse-Quota", "");
if (user.empty() && password.empty() && quota_key.empty())
{
/// User name and password can be passed using query parameters
/// or using HTTP Basic auth (both methods are insecure).
if (request.hasCredentials())
{
Poco::Net::HTTPBasicCredentials credentials(request);
user = credentials.getUsername();
password = credentials.getPassword();
}
else
{
user = params.get("user", "default");
password = params.get("password", "");
}
quota_key = params.get("quota_key", "");
}
else
{
/// It is prohibited to mix different authorization schemes.
if (request.hasCredentials()
|| params.has("user")
|| params.has("password")
|| params.has("quota_key"))
{
throw Exception("Invalid authentication: it is not allowed to use X-ClickHouse HTTP headers and other authentication methods simultaneously", ErrorCodes::REQUIRED_PASSWORD);
}
}
std::string query_id = params.get("query_id", "");
context.setUser(user, password, request.clientAddress(), quota_key);
context.setCurrentQueryId(query_id);
/// The user could specify session identifier and session timeout.
/// It allows to modify settings, create temporary tables and reuse them in subsequent requests.
std::shared_ptr<Context> session;
String session_id;
std::chrono::steady_clock::duration session_timeout;
bool session_is_set = params.has("session_id");
const auto & config = server.config();
if (session_is_set)
{
session_id = params.get("session_id");
session_timeout = parseSessionTimeout(config, params);
std::string session_check = params.get("session_check", "");
session = context.acquireSession(session_id, session_timeout, session_check == "1");
context = *session;
context.setSessionContext(*session);
}
SCOPE_EXIT({
if (session_is_set)
session->releaseSession(session_id, session_timeout);
});
开发者ID:chipitsine,项目名称:ClickHouse,代码行数:88,代码来源:HTTPHandler.cpp示例13: uri
// ----------------------------------------------------------------------
int ofxHttpUtils::doPostForm(ofxHttpForm & form){
int ret = -1;
try{
URI uri( form.action.c_str() );
std::string path(uri.getPathAndQuery());
if (path.empty()) path = "/";
HTTPClientSession session(uri.getHost(), uri.getPort());
HTTPRequest req(HTTPRequest::HTTP_POST, path, HTTPMessage::HTTP_1_1);
if(auth.getUsername()!="") auth.authenticate(req);
if(sendCookies){
for(unsigned i=0; i<cookies.size(); i++){
NameValueCollection reqCookies;
reqCookies.add(cookies[i].getName(),cookies[i].getValue());
req.setCookies(reqCookies);
}
}
HTMLForm pocoForm;
// create the form data to send
if(form.formFiles.size()>0)
pocoForm.setEncoding(HTMLForm::ENCODING_MULTIPART);
else
pocoForm.setEncoding(HTMLForm::ENCODING_URL);
// form values
for(unsigned i=0; i<form.formIds.size(); i++){
const std::string name = form.formIds[i].c_str();
const std::string val = form.formValues[i].c_str();
pocoForm.set(name, val);
}
map<string,string>::iterator it;
for(it = form.formFiles.begin(); it!=form.formFiles.end(); it++){
string fileName = it->second.substr(it->second.find_last_of('/')+1);
cout << "adding file: " << fileName << " path: " << it->second << endl;
pocoForm.addPart(it->first,new FilePartSource(it->second));
}
pocoForm.prepareSubmit(req);
pocoForm.write(session.sendRequest(req));
HTTPResponse res;
istream& rs = session.receiveResponse(res);
ofxHttpResponse response = ofxHttpResponse(res, rs, path);
if(sendCookies){
cookies.insert(cookies.begin(),response.cookies.begin(),response.cookies.end());
}
ofNotifyEvent(newResponseEvent, response, this);
ret = 0;
}catch (Exception& exc){
printf("ofxHttpUtils error--\n");
//ofNotifyEvent(notifyNewError, "time out", this);
// for now print error, need to broadcast a response
std::cerr << exc.displayText() << std::endl;
}
return ret;
}
开发者ID:heavyside,项目名称:refractiveindex,代码行数:71,代码来源:ofxHttpUtils.cpp示例14: jhtml_collection_item
//.........这里部分代码省略.........
*rval = OBJECT_TO_JSVAL(pElem->CreateJSObject());
}
else
{
*rval = JSVAL_NULL;
}
return JS_TRUE;
}
case ALL_TAGS_BY_TAGNAME:
{
//get the nth item with the specified tag name...
HTMLTagType hType = HTML_ParseTagType(pColl->nameOfAll, webc_strlen(pColl->nameOfAll));
HTMLElementType eType = TagToHTMLElementType[hType];
HTMLNthOfTypeFinder finder(eType, index);
pElem = pColl->pTop->FindElement(&finder, 1, WEBC_FALSE);
if (pElem)
{
*rval = OBJECT_TO_JSVAL(pElem->CreateJSObject());
}
else
{
*rval = JSVAL_NULL;
}
return JS_TRUE;
}
case FORM_INPUTS:
{
//for this type of collection, the top will always be of type form
HTMLForm *form = (HTMLForm *)pColl->pTop;
if (form)
{
pElem = jutils_GetNthOfObjectList(form->GetFieldVector(),
index,
_matchInput,
0);
if (pElem)
{
*rval = OBJECT_TO_JSVAL(pElem->CreateJSObject());
}
else
{
*rval = JSVAL_NULL;
}
return JS_TRUE;
}
break;
}
case DOCUMENT_STYLESHEETS:
{
#if (WEBC_SUPPORT_STYLE_SHEETS)
//GMP this needs to be revisited if CSS is changed to have more than 1 style sheet
*rval = OBJECT_TO_JSVAL(pDoc->GetCSSContext()->GetJSObject());
#else
*rval = JSVAL_NULL;
#endif
return JS_TRUE;
}
开发者ID:peteratebs,项目名称:webcwebbrowser,代码行数:66,代码来源:jhcoll.cpp示例15: jhtml_collection_namedItem
//.........这里部分代码省略.........
}
case ALL_BY_NAME:
{
HTMLElementByNameFinder finder(name);
pElem = pColl->pTop->FindElement(&finder,1, INCLUDE_SELF_ELEMENT_DEFAULT);
break;
}
case ALL_TAGS_BY_TAGNAME:
{
if(pColl && pColl->nameOfAll)
{
HTMLTagType hType = HTML_ParseTagType(pColl->nameOfAll, webc_strlen(pColl->nameOfAll));
HTMLElementType eType = TagToHTMLElementType[hType];
HTMLNameTypeFinder finder(name, eType);
// TODO this should probably restrict to a specific tag name
pElem = pColl->pTop->FindElement(&finder, 1, WEBC_FALSE);
}
break;
}
case ELEMENT_NODES:
{
HTMLNameOrIdFinder finder(name);
pElem = pColl->pTop->FindElement(&finder,1, INCLUDE_SELF_NODES_DEFAULT);
break;
}
case FORM_INPUTS:
{
//for this type of collection, the top will always be of type form
HTMLForm *form = (HTMLForm *)pColl->pTop;
if (form && name && *name)
{
pElem = jutils_CheckObjectList(form->GetFieldVector(), _matchInputByNameOrId, (WEBC_PFBYTE)name);
}//end if
break;
}
case DOCUMENT_STYLESHEETS:
{
#if (WEBC_SUPPORT_STYLE_SHEETS)
//GMP this needs to be revisited if CSS is changed to have more than 1 style sheet
#endif
break;
}
case SSHEET_RULES:
{
#if (WEBC_SUPPORT_STYLE_SHEETS)
CSSDocumentContext *pCSSCx= pDoc->GetCSSContext();
/* if (pCSSCx)
{
int i = 0;
vector_iterator pvi[1];
CSSPropertyDescriptor * pCSSPD = pCSSCx->EnumFirstProperty(pvi);
while (pCSSPD)
{
char *cName = pCSSPD->EnumFirstClass();
while (cName)
{
if (tc_stricmp(cName, name) == 0)
{
*rval = OBJECT_TO_JSVAL(pCSSPD->GetJSObject());
开发者ID:peteratebs,项目名称:webcwebbrowser,代码行数:67,代码来源:jhcoll.cpp本文标签属性:
示例:示例的拼音
代码:代码零九
HTMLForm:htmlform表单