{"record":{"id":"9e210f5575bb2b34","repo":"DioxusLabs/dioxus","slug":"setheader-must-have-data-to-set","errorCode":null,"errorMessage":"SetHeader must have data to set","messagePattern":"SetHeader must have data to set","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packages/fullstack/src/payloads/header.rs","lineNumber":27,"sourceCode":"}\n\nimpl<T: Header> SetHeader<T> {\n    pub fn new(\n        value: impl TryInto<HeaderValue, Error = InvalidHeaderValue>,\n    ) -> Result<Self, headers::Error> {\n        let values = value.try_into().map_err(|_| headers::Error::invalid())?;\n\n        let res = T::decode(&mut std::iter::once(&values))?;\n\n        Ok(Self { data: Some(res) })\n    }\n}\n\nimpl<T: Header> IntoResponseParts for SetHeader<T> {\n    type Error = ();\n\n    fn into_response_parts(self, res: ResponseParts) -> Result<ResponseParts, Self::Error> {\n        let data = self.data.expect(\"SetHeader must have data to set\");\n\n        let mut headers = vec![];\n        data.encode(&mut headers);\n\n        Ok(axum::response::AppendHeaders(\n            headers.into_iter().map(|value| (T::name().clone(), value)),\n        )\n        .into_response_parts(res)\n        .unwrap())\n    }\n}\n\nimpl<T: Header> FromResponseParts for SetHeader<T> {\n    fn from_response_parts(parts: &mut axum::http::response::Parts) -> Result<Self, ServerFnError> {\n        let Some(header) = parts.headers.remove(T::name()) else {\n            return Ok(SetHeader { data: None });\n        };\n","sourceCodeStart":9,"sourceCodeEnd":45,"githubUrl":"https://github.com/DioxusLabs/dioxus/blob/24f6a829df0dfa203961a98ea4cae21c2ff27e28/packages/fullstack/src/payloads/header.rs#L9-L45","documentation":"Internal invariant: SetHeader was used as a response part but its data field was None. The type was constructed through a path that skipped new(), which always sets data; firing indicates an externally constructed invalid value.","triggerScenarios":"Thrown at packages/fullstack/src/payloads/header.rs:27 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide header data when constructing the SetHeader payload; an empty SetHeader cannot be applied."],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"24f6a829df0dfa203961a98ea4cae21c2ff27e28","analyzedAt":"2026-08-23T07:10:14.078Z","contentChangedAt":"2026-08-23T07:10:14.078Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}