951 Commits

Author SHA1 Message Date
Tom Pallister
b0a20d13b9
Feature/more dynamic routes (#508)
* Made the file config poller use IHostedService, bit more generic, not just need to provide the correct implementations of the repo services and it will poll anything..this means we can open up redis for #458

* removed comments

* #458 allow users to set rate limits per service for dynamic re routes

* #458 added docs for rate limting on dynamic reroutes
2018-07-29 20:32:45 +01:00
Tom Pallister
0f2cf2d188
Made the file config poller use IHostedService, bit more generic, not… (#507)
* Made the file config poller use IHostedService, bit more generic, not just need to provide the correct implementations of the repo services and it will poll anything..this means we can open up redis for #458

* removed comments
2018-07-29 18:23:49 +01:00
geffzhang
ac1e3ae22a
Merge pull request #49 from ThreeMammals/develop
merge newestcode
2018-07-28 17:40:02 +08:00
Tom Pallister
1817564ea5
Feature/fix #463 (#506)
* #463 save both files

* #463 made it so we dont save to disk on startup unless using admin api
2018-07-27 23:13:22 +01:00
WrathZA
9f4448378a Adjusted routing.rst (while learning) (#504) 2018-07-27 18:01:32 +01:00
WrathZA
fa6dc5901a Spelling in documentation. (#491)
* Minor spelling issues

* spelling
2018-07-25 08:41:04 +01:00
Tom Pallister
d186f0e1b6
#490 use byte content not stream (#498) 2018-07-25 08:34:58 +01:00
WrathZA
69ca874239 Minor spelling issues (#489) 2018-07-23 18:17:02 +01:00
Tom Pallister
600732651b
Ive made the acceptance tests share the same builder in an effort to duplicate the linux port in use issue I have when running acceptance tests...seems to have been some use...now to test in CI (#486) 2018-07-21 11:24:05 +01:00
Tom Pallister
daa0491992
#469 more docs around how services should be set up in consul (#485) 2018-07-21 09:01:45 +01:00
Tom Pallister
079ec0f365
#474 tests to show how spaces in headers work (#483) 2018-07-21 00:10:06 +01:00
Tom Pallister
7dbfc46e7b
#473 dont remove query string param (#481) 2018-07-20 23:10:59 +01:00
Anders Rasmussen
5e91d30352 Spell correction of Fowarding to Forwarding (#482) 2018-07-20 22:39:54 +01:00
Tom Pallister
23c5fcbf91
#464 (#477)
* #464 added code to request mapper to not automatically add content type and content length headers, .net will automatically try and add these headers in a few circumstances but this solves the 464 issue

* #464 use seek instead of read on body check for websockets tests

* #464 ran out of inodes on linux, looks like reloadonchange causes this
2018-07-20 22:32:40 +01:00
geffzhang
2fded67de8
Merge pull request #48 from ThreeMammals/develop
merge newest code
2018-07-20 07:17:13 +08:00
Edwin van Wijk
12ef3bc00f Added overload of the IConfigurationBuilder.AddOcelot extension-method that accepts a specific folder (#476) 2018-07-19 17:49:47 +01:00
aqa510415008
5c940acf0e Expand other branch pipes (#416)
* Expand other branch pipes

* Expand other branch pipes

* Expand other branch pipes

* optimization Expand other branch pipes ,Add Unit test

*  I hope to add two attributes to IOcelotBuilder for easy extension.
2018-07-19 17:45:46 +01:00
Tom Pallister
8f4ae03290
Added support for query string parameters in upstream path template (#467) 2018-07-12 19:26:23 +01:00
Tom Pallister
19ea93d10e +semver: breaking and updated docs, this is breaking because i missed it with last release that remove delegating handlers and there are a lot of package upgrades 2018-07-11 06:34:35 +01:00
Tom Pallister
26ef3faa11
upgraded packages to netcoreapp2.1 Ocelot is still netstandard2.0 (#455)
* upgraded packages to netcoreapp2.1 Ocelot is still netstandard2.0

* try get latest sdk travis

* try get specific sdk travis
2018-07-11 06:28:08 +01:00
Tom Gardham-Pallister
69d766b01d #446 link to issue that might help people with okta integration 2018-07-10 18:06:28 +01:00
Tom Pallister
75f9a8f9be
#451 started implementing querystring support in templates (#459)
* #451 started implementing querystring support in templates

* #451 ocelot.json back to normal and specified in docs query string wont work in upstream template

* Revert "#451 ocelot.json back to normal and specified in docs query string wont work in upstream template"

This reverts commit 563193f7b2f78bad6109484fe77f3c87de831005.

* #451 ocelot.json back to normal and specified in docs query string wont work in upstream template
2018-07-10 18:00:17 +01:00
Tom Pallister
89c3887d36
#453 made caching docs a bit better (#457) 2018-07-09 18:35:01 +01:00
Tom Pallister
c8b72f31b5
#438 removed singleton delegating handlers as you cannot have these (#456) 2018-07-09 08:08:39 +01:00
Tom Pallister
a419ed68dc
#398 refactored MemoryHttpClientCache to stop it holding onto references (#448) 2018-07-08 15:09:16 +01:00
Tom Pallister
d604badd49
test to show returning 304 works (#450) 2018-07-08 15:02:35 +01:00
Lee Kah Wai
85efcf0787 Update authentication.rst (#449)
Cannot assign lambda expression to an implicity-typed variable
2018-07-05 06:57:08 +01:00
Tom Gardham-Pallister
8029d07d1d point to test api in azure for performance profilin 2018-07-02 20:48:05 +01:00
Tom Pallister
a87bc92c60
Feature/test for #441 (#444)
* #441 added a test for this change

* #441 bit of tidying up and fixing of erros
2018-07-01 08:56:06 +01:00
Tom Gardham-Pallister
2832cb1bf4 Merge branch 'master' into develop 2018-06-29 19:03:55 +01:00
liuyuedeyv
ddbfd44125 Update HttpClientBuilder.cs (#442)
if get the httpclient from cache,when the save method called ,it can not to save the right httpclient;
2018-06-29 19:02:35 +01:00
Tom Pallister
0f7aaa097d
dont use dynamic routing unless service discovery provider explictly set and log that we are going to use dynamic info (#437)
* #428 dont use dynamic routing unless service discovery provider explictly set and log that we are going to use dynamic info

* #428 fixed tests that were failing due to not maintaining backwards compat with config for service discovery
2018-06-27 18:15:04 +01:00
geffzhang
cc33d9f86e
Merge pull request #47 from ThreeMammals/develop
merge newestcode
2018-06-24 20:23:07 +08:00
Marco Antonio Araujo
9db4273f18 Fix catch all route on UpstreamTemplatePatternCreator regex to match everything (#407) (#411) 2018-06-22 16:35:21 +01:00
Tom Pallister
b60d26e1c6
Feature/few tweaks (#422)
* #419 Incorrect routing when UpstreamHost is specified and UpstreamHttpMethod is empty

* few tweaks to make seperate test as I got confused having one...there is too much setup in these tests

* added another test case for route matching

* set cake coveralls addin to v0.0.7 so build works...
2018-06-22 07:01:10 +01:00
Tom Pallister
3eb9b4da89
Feature/fix admin api caching wrong re routes (#421)
* #383 added failing test for this issue

* #383 identified issue was with cached load balancer for a given upstream path template based on the key we use, have modified this to include more data, I guess this might be an issue again for other things so I will have a think about it

* #383 fixed failing tests after key change

* Seems to be an issue with coveralls new package not being on nuget...try same version as their nuget package

* bash the old manual tests json back in
2018-06-21 22:45:24 +01:00
David Nissimoff
fffc4c8d3c #419 Incorrect routing when UpstreamHost is specified and UpstreamHttpMethod is empty (#420) 2018-06-20 22:41:00 +01:00
Tom Pallister
e636cefdb1
check which version of .net framework before creating http handler (#412)
* #405 needto check which version of .net we are using but cannot use compiler directives

* #405 started puttig abstraction around static method to get frameworks so we can test this logic

* #405 added test for all methods and tidied up tests

* #405 made contains as ms docs are wrong, thanks to davidni for the heads up
2018-06-20 20:44:38 +01:00
Joseph Woodward
b5a827cf70 Minor tweaks (#413) 2018-06-19 20:56:35 +01:00
JoJo2406
e0f76210f7 Change port in Consul documentation (#418)
* Fix Consul default port

the default port for the consul api is 8500 not 9500 - https://www.consul.io/docs/agent/options.html

* Fix typo
2018-06-19 20:54:57 +01:00
Ni Yanwei
347303ee7b 修改查找ocelot配置文件正则表达式中的问题 (#410)
正则表达式"(?i)ocelot.([a-zA-Z0-9]*).json",“ocelot.”中的“.”能匹配除"\n"外的任意字符;".json"原因是匹配json文件,但实际能匹配任何"*.json*"文件
2018-06-17 19:25:45 +01:00
Tom Pallister
8e1a5ce827
Feature/dont validate cached content headers (#406)
* #372 use period timespan to decide when client can make requests again

* #400 dont validate cached body headers
2018-06-15 20:30:25 +01:00
Tom Pallister
9979f8a4b8
#372 use period timespan to decide when client can make requests again (#404) 2018-06-15 20:29:49 +01:00
Marco Antonio Araujo
87c13bd9b4 Add ability to specify whether to UseProxy or not on ReRoutes (#390) (#391)
* Add ability to specify whether to UseProxy or not on ReRoutes (#390)

* Remove useProxy default value from HttpHandlerOptions constructor
2018-06-12 08:08:25 +03:00
Tom Pallister
0f2a9c1d0d
Feature/poll consul (#392)
* WIP - implement a consul service discovery poller, lots of shared code with existing, refactor next and a todo in the docs to finish

* #374 implement polling for consul as option

* #374 updated docs to remove todo

* #374 fixed failing unit test

* #374 fixed failing unit test

* #374 fixed failing acceptance test
2018-06-12 00:58:08 +03:00
Tom Gardham-Pallister
14308ff5fb added ignore code coverage to experimental sqllitelog class that cannot be unit tested anyway really 2018-06-11 22:57:43 +01:00
Alex Kuriatnyk
095406bd45 Fix incorrect response StatusCode for middleware added before Ocelot (#380) 2018-06-11 22:23:45 +03:00
Wayne Douglas
3bde18f6f8 Update raft.rst (#394) 2018-06-11 22:04:43 +03:00
Wayne Douglas
7d0320beca Update authentication.rst (#395)
Fix spelling
2018-06-11 22:04:13 +03:00
geffzhang
3ef978460c update LoadBalancer Options (#388)
update LoadBalancer with LoadBalancerOptions
2018-06-08 17:55:58 +03:00