| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "net/test/embedded_test_server/default_handlers.h" | 5 #include "net/test/embedded_test_server/default_handlers.h" |
| 6 | 6 |
| 7 #include <stdlib.h> | 7 #include <stdlib.h> |
| 8 #include <ctime> | 8 #include <ctime> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <sstream> | 10 #include <sstream> |
| 11 #include <string> | 11 #include <string> |
| 12 #include <utility> | 12 #include <utility> |
| 13 | 13 |
| 14 #include "base/base64.h" | 14 #include "base/base64.h" |
| 15 #include "base/files/file_path.h" | 15 #include "base/files/file_path.h" |
| 16 #include "base/files/file_util.h" | 16 #include "base/files/file_util.h" |
| 17 #include "base/format_macros.h" | 17 #include "base/format_macros.h" |
| 18 #include "base/macros.h" | 18 #include "base/macros.h" |
| 19 #include "base/md5.h" | 19 #include "base/md5.h" |
| 20 #include "base/memory/ptr_util.h" |
| 20 #include "base/path_service.h" | 21 #include "base/path_service.h" |
| 21 #include "base/strings/string_split.h" | 22 #include "base/strings/string_split.h" |
| 22 #include "base/strings/string_util.h" | 23 #include "base/strings/string_util.h" |
| 23 #include "base/strings/stringprintf.h" | 24 #include "base/strings/stringprintf.h" |
| 24 #include "base/threading/thread_task_runner_handle.h" | 25 #include "base/threading/thread_task_runner_handle.h" |
| 25 #include "base/time/time.h" | 26 #include "base/time/time.h" |
| 26 #include "net/base/escape.h" | 27 #include "net/base/escape.h" |
| 27 #include "net/base/url_util.h" | 28 #include "net/base/url_util.h" |
| 28 #include "net/test/embedded_test_server/http_request.h" | 29 #include "net/test/embedded_test_server/http_request.h" |
| 29 #include "net/test/embedded_test_server/http_response.h" | 30 #include "net/test/embedded_test_server/http_response.h" |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 152 "<h1>Request Headers:</h1><pre>" + | 153 "<h1>Request Headers:</h1><pre>" + |
| 153 request.all_headers + | 154 request.all_headers + |
| 154 "</pre>" | 155 "</pre>" |
| 155 "</body></html>"; | 156 "</body></html>"; |
| 156 | 157 |
| 157 http_response->set_content_type("text/html"); | 158 http_response->set_content_type("text/html"); |
| 158 http_response->set_content(body); | 159 http_response->set_content(body); |
| 159 return std::move(http_response); | 160 return std::move(http_response); |
| 160 } | 161 } |
| 161 | 162 |
| 163 // /echo-raw |
| 164 // Returns the query string as the raw response (no HTTP headers). |
| 165 std::unique_ptr<HttpResponse> HandleEchoRaw(const HttpRequest& request) { |
| 166 return base::MakeUnique<RawHttpResponse>("", request.GetURL().query()); |
| 167 } |
| 168 |
| 162 // /set-cookie?COOKIES | 169 // /set-cookie?COOKIES |
| 163 // Sets response cookies to be COOKIES. | 170 // Sets response cookies to be COOKIES. |
| 164 std::unique_ptr<HttpResponse> HandleSetCookie(const HttpRequest& request) { | 171 std::unique_ptr<HttpResponse> HandleSetCookie(const HttpRequest& request) { |
| 165 std::unique_ptr<BasicHttpResponse> http_response(new BasicHttpResponse); | 172 std::unique_ptr<BasicHttpResponse> http_response(new BasicHttpResponse); |
| 166 http_response->set_content_type("text/html"); | 173 http_response->set_content_type("text/html"); |
| 167 std::string content; | 174 std::string content; |
| 168 GURL request_url = request.GetURL(); | 175 GURL request_url = request.GetURL(); |
| 169 if (request_url.has_query()) { | 176 if (request_url.has_query()) { |
| 170 std::vector<std::string> cookies = base::SplitString( | 177 std::vector<std::string> cookies = base::SplitString( |
| 171 request_url.query(), "&", base::KEEP_WHITESPACE, base::SPLIT_WANT_ALL); | 178 request_url.query(), "&", base::KEEP_WHITESPACE, base::SPLIT_WANT_ALL); |
| (...skipping 422 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 594 server->RegisterDefaultHandler( | 601 server->RegisterDefaultHandler( |
| 595 PREFIXED_HANDLER("/cachetime", &HandleCacheTime)); | 602 PREFIXED_HANDLER("/cachetime", &HandleCacheTime)); |
| 596 server->RegisterDefaultHandler( | 603 server->RegisterDefaultHandler( |
| 597 base::Bind(&HandleEchoHeader, "/echoheader", "no-cache")); | 604 base::Bind(&HandleEchoHeader, "/echoheader", "no-cache")); |
| 598 server->RegisterDefaultHandler( | 605 server->RegisterDefaultHandler( |
| 599 base::Bind(&HandleEchoHeader, "/echoheadercache", "max-age=60000")); | 606 base::Bind(&HandleEchoHeader, "/echoheadercache", "max-age=60000")); |
| 600 server->RegisterDefaultHandler(PREFIXED_HANDLER("/echo", &HandleEcho)); | 607 server->RegisterDefaultHandler(PREFIXED_HANDLER("/echo", &HandleEcho)); |
| 601 server->RegisterDefaultHandler( | 608 server->RegisterDefaultHandler( |
| 602 PREFIXED_HANDLER("/echotitle", &HandleEchoTitle)); | 609 PREFIXED_HANDLER("/echotitle", &HandleEchoTitle)); |
| 603 server->RegisterDefaultHandler(PREFIXED_HANDLER("/echoall", &HandleEchoAll)); | 610 server->RegisterDefaultHandler(PREFIXED_HANDLER("/echoall", &HandleEchoAll)); |
| 611 server->RegisterDefaultHandler(PREFIXED_HANDLER("/echo-raw", &HandleEchoRaw)); |
| 604 server->RegisterDefaultHandler( | 612 server->RegisterDefaultHandler( |
| 605 PREFIXED_HANDLER("/set-cookie", &HandleSetCookie)); | 613 PREFIXED_HANDLER("/set-cookie", &HandleSetCookie)); |
| 606 server->RegisterDefaultHandler( | 614 server->RegisterDefaultHandler( |
| 607 PREFIXED_HANDLER("/set-many-cookies", &HandleSetManyCookies)); | 615 PREFIXED_HANDLER("/set-many-cookies", &HandleSetManyCookies)); |
| 608 server->RegisterDefaultHandler( | 616 server->RegisterDefaultHandler( |
| 609 PREFIXED_HANDLER("/expect-and-set-cookie", &HandleExpectAndSetCookie)); | 617 PREFIXED_HANDLER("/expect-and-set-cookie", &HandleExpectAndSetCookie)); |
| 610 server->RegisterDefaultHandler( | 618 server->RegisterDefaultHandler( |
| 611 PREFIXED_HANDLER("/set-header", &HandleSetHeader)); | 619 PREFIXED_HANDLER("/set-header", &HandleSetHeader)); |
| 612 server->RegisterDefaultHandler( | 620 server->RegisterDefaultHandler( |
| 613 PREFIXED_HANDLER("/nocontent", &HandleNoContent)); | 621 PREFIXED_HANDLER("/nocontent", &HandleNoContent)); |
| (...skipping 21 matching lines...) Expand all Loading... |
| 635 // TODO(svaldez): HandleGetChannelID | 643 // TODO(svaldez): HandleGetChannelID |
| 636 // TODO(svaldez): HandleGetClientCert | 644 // TODO(svaldez): HandleGetClientCert |
| 637 // TODO(svaldez): HandleClientCipherList | 645 // TODO(svaldez): HandleClientCipherList |
| 638 // TODO(svaldez): HandleEchoMultipartPost | 646 // TODO(svaldez): HandleEchoMultipartPost |
| 639 } | 647 } |
| 640 | 648 |
| 641 #undef PREFIXED_HANDLER | 649 #undef PREFIXED_HANDLER |
| 642 | 650 |
| 643 } // namespace test_server | 651 } // namespace test_server |
| 644 } // namespace net | 652 } // namespace net |
| OLD | NEW |