blob: 13ff330bb19da6b306e624dff27b02d07631ed71 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# Gitlab::HTTP_V2
This gem is used as a proxy for all outbounding http connection
coming from callbacks, services and hooks. The direct use of the HTTParty
is discouraged because it can lead to several security problems, like SSRF
calling internal IP or services.
## Usage
### Configuration
```ruby
Gitlab::HTTP_V2.configure do |config|
config.allowed_internal_uris = []
config.log_exception_proc = ->(exception, extra_info) do
# operation
end
config.silent_mode_log_info_proc = ->(message, http_method) do
# operation
end
end
```
### Actions
Basic examples;
```ruby
Gitlab::HTTP_V2.post(uri, body: body)
Gitlab::HTTP_V2.try_get(uri, params)
response = Gitlab::HTTP_V2.head(project_url, verify: true)
Gitlab::HTTP_V2.post(path, base_uri: base_uri, **params)
```
## Development
After checking out the repo, run `bundle` to install dependencies.
Then, run `RACK_ENV=test bundle exec rspec spec` to run the tests.
|