Thank you. I figured there was such a function. Just couldn't find it.

Michael-

On Tuesday, October 11, 2016 at 2:31:41 PM UTC-7, forfader wrote:
>
> I'm reading the Body of an HTTP request. In my handler I want to chunk the 
> response body up into fixed size blocks. I doing this using the following 
> code:
>
> b := make([]byte, config.Blocksize)
>                 for {
> cnt, err := r.Body.Read(b)
> if err == io.EOF {
> break
> }
> if err != nil {
> log.Error("Reading reading request stream", "name", name)
> utils.WriteError(w, http.StatusInternalServerError, "Error reading request 
> stream")
> return
> }
>
> log.Info("Length read", "len", cnt)
>                     }
>
> What I'm seeing is various block sizes being read from the Body reader. I 
> assume that is because the bytes coming over the http stream are not coming 
> fast enough to keep up with my executing code, and so when r.Body.Read is 
> executed I get how ever many bytes are currently available on the stream 
> and not more.
>
> Is there easy way to read fixed size blocks from the request body reader 
> using a built in library function? Say bytes, or bufio. I looked but could 
> not see a function.
>
> I can imagine doing this myself, with multiple reads inside the for loop.
>
> Thanks
> Michael-
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to