@@ -1555,7 +1555,7 @@ let QUERYPARAM = 'query',
1555
1555
} ,
1556
1556
1557
1557
resolveResponseBody = ( context , responseBody = { } ) => {
1558
- let responseContent , bodyType , bodyData , headerFamily ;
1558
+ let responseContent , bodyType , bodyData , headerFamily , acceptHeader ;
1559
1559
1560
1560
if ( _ . isEmpty ( responseBody ) ) {
1561
1561
return responseBody ;
@@ -1583,16 +1583,24 @@ let QUERYPARAM = 'query',
1583
1583
const { indentCharacter } = context . computedOptions ,
1584
1584
rawModeData = ! _ . isObject ( bodyData ) && _ . isFunction ( _ . get ( bodyData , 'toString' ) ) ?
1585
1585
bodyData . toString ( ) :
1586
- JSON . stringify ( bodyData , null , indentCharacter ) ;
1586
+ JSON . stringify ( bodyData , null , indentCharacter ) ,
1587
+ responseMediaTypes = _ . keys ( responseContent ) ;
1587
1588
1589
+ if ( responseMediaTypes . length > 0 ) {
1590
+ acceptHeader = [ {
1591
+ key : 'Accept' ,
1592
+ value : responseMediaTypes [ 0 ]
1593
+ } ] ;
1594
+ }
1588
1595
1589
1596
return {
1590
1597
body : rawModeData ,
1591
1598
contentHeader : [ {
1592
1599
key : 'Content-Type' ,
1593
1600
value : bodyType
1594
1601
} ] ,
1595
- bodyType
1602
+ bodyType,
1603
+ acceptHeader
1596
1604
} ;
1597
1605
} ,
1598
1606
@@ -1709,14 +1717,15 @@ let QUERYPARAM = 'query',
1709
1717
} ,
1710
1718
1711
1719
resolveResponseForPostmanRequest = ( context , operationItem , request ) => {
1712
- let responses = [ ] ;
1720
+ let responses = [ ] ,
1721
+ requestAcceptHeader ;
1713
1722
1714
1723
_ . forOwn ( operationItem . responses , ( responseSchema , code ) => {
1715
1724
let response ,
1716
1725
{ includeAuthInfoInExample } = context . computedOptions ,
1717
1726
responseAuthHelper ,
1718
1727
auth = request . auth ,
1719
- { body, contentHeader = [ ] , bodyType } = resolveResponseBody ( context , responseSchema ) || { } ,
1728
+ { body, contentHeader = [ ] , bodyType, acceptHeader } = resolveResponseBody ( context , responseSchema ) || { } ,
1720
1729
headers = resolveResponseHeaders ( context , responseSchema . headers ) ,
1721
1730
originalRequest = request ,
1722
1731
reqHeaders = _ . clone ( request . headers ) || [ ] ,
@@ -1738,6 +1747,11 @@ let QUERYPARAM = 'query',
1738
1747
} ) ;
1739
1748
}
1740
1749
1750
+ // set accept header value as first found response content's media type
1751
+ if ( _ . isEmpty ( requestAcceptHeader ) ) {
1752
+ requestAcceptHeader = acceptHeader ;
1753
+ }
1754
+
1741
1755
response = {
1742
1756
name : _ . get ( responseSchema , 'description' ) ,
1743
1757
body,
@@ -1750,7 +1764,7 @@ let QUERYPARAM = 'query',
1750
1764
responses . push ( response ) ;
1751
1765
} ) ;
1752
1766
1753
- return responses ;
1767
+ return { responses, acceptHeader : requestAcceptHeader } ;
1754
1768
} ;
1755
1769
1756
1770
module . exports = {
@@ -1771,7 +1785,6 @@ module.exports = {
1771
1785
{ pathVariables, collectionVariables } = filterCollectionAndPathVariables ( url , pathParams ) ,
1772
1786
requestBody = resolveRequestBodyForPostmanRequest ( context , operationItem [ method ] ) ,
1773
1787
request ,
1774
- responses ,
1775
1788
securitySchema = _ . get ( operationItem , [ method , 'security' ] ) ,
1776
1789
authHelper = generateAuthForCollectionFromOpenAPI ( context . openapi , securitySchema ) ;
1777
1790
@@ -1795,7 +1808,12 @@ module.exports = {
1795
1808
auth : authHelper
1796
1809
} ;
1797
1810
1798
- responses = resolveResponseForPostmanRequest ( context , operationItem [ method ] , request ) ;
1811
+ const { responses, acceptHeader } = resolveResponseForPostmanRequest ( context , operationItem [ method ] , request ) ;
1812
+
1813
+ // add accept header if found and not present already
1814
+ if ( ! _ . isEmpty ( acceptHeader ) ) {
1815
+ request . headers = _ . concat ( request . headers , acceptHeader ) ;
1816
+ }
1799
1817
1800
1818
return {
1801
1819
request : {
0 commit comments