Merge branch 'main' into 374-empty-default-pass
This commit is contained in:
		
						commit
						dfec18be3d
					
				
					 3 changed files with 34 additions and 1 deletions
				
			
		|  | @ -2678,6 +2678,27 @@ Here's a simple example: | ||||||
|     ])); |     ])); | ||||||
|     ``` |     ``` | ||||||
| 
 | 
 | ||||||
|  | #### Auth Query Param | ||||||
|  | In some instances, you may want to send auth credentials in the URL (e.g., a GET webhook or a JSON POST request). You | ||||||
|  | can use the `auth` query parameter. Set the value to the base64 encoding of the value of the `Authorization` header | ||||||
|  | and strip any trailing `=`. **Be sure to only send auth credentials over an HTTPS connection** | ||||||
|  | 
 | ||||||
|  | Here is an example: | ||||||
|  | ``` | ||||||
|  |     Step 1. base64(user:pass)             -> base64(testuser:fakepassword)                    -> dGVzdHVzZXI6ZmFrZXBhc3N3b3Jk | ||||||
|  |     Step 2. Authorization header          -> Basic base64(testuser:fakepassword)              -> Basic dGVzdHVzZXI6ZmFrZXBhc3N3b3Jk | ||||||
|  |     Step 3. base64(Authorization header)  -> base64(Basic dGVzdHVzZXI6ZmFrZXBhc3N3b3Jk)       -> QmFzaWMgZEdWemRIVnpaWEk2Wm1GclpYQmhjM04zYjNKaw== | ||||||
|  |     Step 4. remove trailing `=` (if any)  -> QmFzaWMgZEdWemRIVnpaWEk2Wm1GclpYQmhjM04zYjNKaw== -> QmFzaWMgZEdWemRIVnpaWEk2Wm1GclpYQmhjM04zYjNKaw | ||||||
|  |     Step 5. add query param to URL        -> https://ntfy.sh/topic                            -> https://ntfy.sh/topic?auth=QmFzaWMgZEdWemRIVnpaWEk2Wm1GclpYQmhjM04zYjNKaw | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | !!! note | ||||||
|  |     Do NOT remove trailing `=` after step 2 | ||||||
|  | 
 | ||||||
|  | The following command will generate the appropriate value for you on *nix systems: | ||||||
|  | 
 | ||||||
|  | ```echo -n "Basic `echo -n 'testuser:fakepassword' | base64`" | base64 | tr -d '='``` | ||||||
|  | 
 | ||||||
| ### Message caching | ### Message caching | ||||||
| !!! info | !!! info | ||||||
|     If `Cache: no` is used, messages will only be delivered to connected subscribers, and won't be re-delivered if a  |     If `Cache: no` is used, messages will only be delivered to connected subscribers, and won't be re-delivered if a  | ||||||
|  |  | ||||||
|  | @ -4,10 +4,15 @@ and the [ntfy Android app](https://github.com/binwiederhier/ntfy-android/release | ||||||
| 
 | 
 | ||||||
| ## ntfy server v1.29.0 (UNRELEASED) | ## ntfy server v1.29.0 (UNRELEASED) | ||||||
| 
 | 
 | ||||||
|  | **Features:** | ||||||
|  | 
 | ||||||
|  | * Allow IP CIDRs in `visitor-request-limit-exempt-hosts` ([#423](https://github.com/binwiederhier/ntfy/issues/423), thanks to [@karmanyaahm](https://github.com/karmanyaahm)) | ||||||
|  | 
 | ||||||
| **Bug fixes + maintenance:** | **Bug fixes + maintenance:** | ||||||
| 
 | 
 | ||||||
| * Subscriptions can now have a display name ([#370](https://github.com/binwiederhier/ntfy/issues/370), thanks to [@tfheen](https://github.com/tfheen) for reporting) | * Subscriptions can now have a display name ([#370](https://github.com/binwiederhier/ntfy/issues/370), thanks to [@tfheen](https://github.com/tfheen) for reporting) | ||||||
| * Bump Go version to Go 18.x ([#422](https://github.com/binwiederhier/ntfy/issues/422)) | * Bump Go version to Go 18.x ([#422](https://github.com/binwiederhier/ntfy/issues/422)) | ||||||
|  | * Web: Strip trailing slash when subscribing ([#428](https://github.com/binwiederhier/ntfy/issues/428), thanks to [@raining1123](https://github.com/raining1123) for reporting, and [@wunter8](https://github.com/wunter8) for fixing) | ||||||
| * Allow empty passwords in `client.yml` ([#374](https://github.com/binwiederhier/ntfy/issues/374), thanks to [@cyqsimon](https://github.com/cyqsimon) for reporting, and [@wunter8](https://github.com/wunter8) for fixing) | * Allow empty passwords in `client.yml` ([#374](https://github.com/binwiederhier/ntfy/issues/374), thanks to [@cyqsimon](https://github.com/cyqsimon) for reporting, and [@wunter8](https://github.com/wunter8) for fixing) | ||||||
| 
 | 
 | ||||||
| **Documentation:** | **Documentation:** | ||||||
|  |  | ||||||
|  | @ -90,6 +90,13 @@ const SubscribePage = (props) => { | ||||||
|             return validTopic(topic) && !isExistingTopicUrl; |             return validTopic(topic) && !isExistingTopicUrl; | ||||||
|         } |         } | ||||||
|     })(); |     })(); | ||||||
|  |     const updateBaseUrl = (ev, newVal) => { | ||||||
|  |         if (validUrl(newVal)) { | ||||||
|  |           props.setBaseUrl(newVal.replace(/\/$/, '')); // strip trailing slash after https?://
 | ||||||
|  |         } else { | ||||||
|  |           props.setBaseUrl(newVal); | ||||||
|  |         } | ||||||
|  |     }; | ||||||
|     return ( |     return ( | ||||||
|         <> |         <> | ||||||
|             <DialogTitle>{t("subscribe_dialog_subscribe_title")}</DialogTitle> |             <DialogTitle>{t("subscribe_dialog_subscribe_title")}</DialogTitle> | ||||||
|  | @ -128,7 +135,7 @@ const SubscribePage = (props) => { | ||||||
|                     options={existingBaseUrls} |                     options={existingBaseUrls} | ||||||
|                     sx={{ maxWidth: 400 }} |                     sx={{ maxWidth: 400 }} | ||||||
|                     inputValue={props.baseUrl} |                     inputValue={props.baseUrl} | ||||||
|                     onInputChange={(ev, newVal) => props.setBaseUrl(newVal)} |                     onInputChange={updateBaseUrl} | ||||||
|                     renderInput={ (params) => |                     renderInput={ (params) => | ||||||
|                         <TextField |                         <TextField | ||||||
|                             {...params} |                             {...params} | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue